【问题标题】:How to loop through list in Django Template如何遍历 Django 模板中的列表
【发布时间】:2011-05-15 12:48:35
【问题描述】:

我有一个名为“bestforproglist”的列表。我也有一个像这样的for 循环

{% for act in activities %}
    <div style="float:left;">{{ act.spotcategoryactivity }}</div>

    <div class="progit">
            <div class="prog_c" >
                <div id="prog_p" style="width:20%;"></div>
            </div>
            <span id="p_caps">{{ ____________ }}%</span><br/>
    </div>

{% endfor %}

在上面的代码中,在下划线的空间中,当循环在第一次迭代时,我应该如何在列表中拥有第一项,在循环中时,我应该如何拥有列表中的第二项第二次迭代等等......

我试过了

<span id="p_caps">{{ mylist[ {{forloop.counter}} ] }}</span><br/>

但它不起作用。

【问题讨论】:

  • 你不能在模板中使用 list['key'],它可以作为 list.key 来访问

标签: python html django django-templates


【解决方案1】:

在模板中,这样的代码 """ mylist[ {{forloop.counter}} ] """ 不起作用。

使用“。”而是。

http://docs.djangoproject.com/en/dev/topics/templates/#variables

这会让你清楚如何在模板中输出东西

【讨论】:

    【解决方案2】:

    mylist 是什么?如果您想遍历多个列表,也许您应该zip 他们并将它们传递给模板?然后你可以使用类似的东西

     {% for x,y in zipped_list %} 
    

    并使用这两个项目而不是您正在尝试的索引。

    【讨论】:

      【解决方案3】:

      如果像这样让activitiesbestforproglist 同步很重要,那么最好将zip() 放在视图中,然后一起迭代它们。

      {% for act, prog in zippedlist %}
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2010-10-21
        • 1970-01-01
        • 2018-02-24
        • 1970-01-01
        • 2020-04-04
        • 2011-01-25
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多