为什么不能在Django模板中遍历此列表

时间:2011-10-10 21:09:41

标签: python django templates

我的视图中有一个变量,它是该模型上Model.objects.all()调用的输出。我在视图中将它传递给我的模板,并且我试图在模板中迭代它。我可以通过这行代码访问它的第一个元素。 'code'是我的django模型中字段的名称。该行确实正确打印了第一个元素的'code'属性。

{{ var_name.0.code }}

但是,当我尝试在模板for循环中迭代var_name时,什么都没有显示出来。我尝试了以下代码:

{% for single_var in var_name %}
    {{ single_var.code }}
{% endfor %}

这实际上并不是我想在for循环中做的事情,但是让它工作将让我在模板中做我需要的。值得注意的是,目前此列表中只有一个元素。

这是一个工作项目,这就是我将变量名称更改为通用名称的原因。

1 个答案:

答案 0 :(得分:0)

我发现将single_var的名称更改为没有下划线的东西似乎可以修复它。这对我来说没有多大意义,因为Django template language documentation说明了以下内容:

Variable names consist of any combination of alphanumeric characters and the underscore ("_").

有谁知道为什么这似乎解决了这个问题?