如何在django模板中创建计数器循环?

时间:2011-02-22 12:15:45

标签: python django django-templates

可以告诉我如何在django

中编写c代码
for(c=0; c<5; c++)
  //do something

我试过下面的代码,但它给了我一个错误

{% for(c=0; c<5; c++)%}
     <div class="tab-content">
    <h1 class="tab" title="title for page 1">Page 1</h1>
    <p>This is the content of tab 1 on container 1</p>
     </div>     
{% endfor %}

3 个答案:

答案 0 :(得分:4)

渲染模板时,可以传递范围

render_to_response('template_x.html', {'range5': range(5)})

在html模板中,可能就像这样

{% for i in range5 %}
    <div class="tab-content">
    <h1 class="tab" title="title for page {{i}}">Page {{i}}</h1>
    <p>This is the content of tab {{i}} on container {{i}}</p>
    </div>  
{% endfor %}

答案 1 :(得分:3)

我猜你不擅长搜索,对(

A good documentation for a good framework ...另一方面,为什么在为python编写的框架中要求类似c的循环结构是另一个问题

编辑:对于django模板中的循环遍历数组(或python术语中的列表)。所以你必须有一个列表来迭代..在你的相关视图中,让我们说yopu有一个数字列表

number_list = [1,2,3,4,5]

如果将此列表传递给具有相同名称的模板,则可以使用

进行迭代
{%for num in nuber_list%}
    Number is : {{num}}
{%endfor%}

但正如我所说,你必须将该列表传递给返回语句行中的模板,该行返回一个httpresponse或将你的帖子呈现给你的模板as it described in here

答案 2 :(得分:3)

我很好奇,找到了办法。免责声明:我认为以下代码为错误

{% for i in "abcde" %} do something {% endfor %}

将“abcde”替换为您想要的范围的字符串。