簡體   English   中英

如何在 Django 中執行嵌套循環?

[英]How do I do nested loops in Django?

我正在嘗試將 output 轉換為具有四個 DIV 的 Django 模板一行:

<div class="row">
   <div class="col-md-3">...</div>
   <div class="col-md-3">...</div>
   <div class="col-md-3">...</div>
   <div class="col-md-3">...</div>
</div>

我需要有兩個嵌套的 For 循環,以便每次輸出第四個 DIV 時,它都會創建一個新行。 在 Java 中,它會是這樣的:

for(int i = 0; i < object_list.length; i++){
   <div class="row">
      for(int j = 0; j < 4; j++){
         <div class="col-md-3">
      }
}

我在模板中使用的代碼是:

{% for object in object_list %}
   {% with object|search as search_results %}
      {% if search_results == 'Post' %}
         [need to fill in appropriate HTML]
      {% endif %}
   {% endwith %}
{% endfor %}  

我怎樣才能做到這一點?

更新:這並沒有完全使用嵌套的 for 循環,但下面的代碼解決了我的問題:

     <div class="row">
        {% for object in object_list %}

                {% with object|search as search_results %}
                    {% if search_results == 'Address' %}
                        <div class="col-3">
                            <div class="iq-card">
                                <div class="">{{ user.username }}</div>
                            </div>
                        </div>
                    {% endif %}
                {% endwith %}

        {% endfor %}
    </div>

您可以像使用簡單循環一樣在模板中簡單地嵌套for循環。

{% for object in objects %}
  {% for subobject in object %}
    ...
  {% endfor}
{% endfor %}

對於基於數字的迭代的循環,請在 Django 模板中查看這個問題 Numeric for loop

用於創建由<div class="row"></div> <div class="col-md-3">...</div> div> ,也可以是多個塊。

按照這種方式:

{% for object in objects %}
    <div class="row">
        {% for subobject in object %}
            <div class="col-md-3">...</div>
        {% endfor}
    </div>
{% endfor %}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM