在Django模板中命名冲突

时间:2013-03-19 19:05:50

标签: python django django-templates

我正在设置一个django模板的一个特殊问题:我有一个{{ name }}变量,我正在传递给我的模板,同时,我有一个{{1来自客户端api的列表,其中包含notes{{ name }} 每当我尝试打印出笔记的名称时,其他{{ body }}都会显示出来。这很奇怪。这是我的笔记代码:

{{ name }}

我做错了吗?是否有我可以使用的上下文操作符?

2 个答案:

答案 0 :(得分:4)

<div class="notes">
   {% for note in notes %}
       <p><strong>{{ note.name }}</strong></p>
       <p>{{ note.body }}</p>
   {% endfor %}
</div>

答案 1 :(得分:3)

这是与Django一起使用Handlebars时常见的错误,因为Handlebars会自动更改范围。您需要做的就是参考使用for循环创建的note变量:

<div class="notes">
    {% for note in notes %}
        <p><strong>{{ note.name }}</strong></p>
        <p>{{ note.body }}</p>
    {% endfor %}
</div>

此处有更多信息:https://docs.djangoproject.com/en/1.5/ref/templates/builtins/#std:templatetag-for