django 在一个模板中同名的 block 应该是只能有一个
然后假设 test = [{'id':1,'name':"第一个块"},{'id':2,'name':"第二个块"}]
模板 a.html 里有这样的语句
{% for x in test %}
{% block ta %}{{ x.id }}{% endblock%}
{% block tb %}{{ x.name }}{% endblock%}
{% endfor %}
这样用 for 出来的 block(ta 和 tb)似乎是各有两个,test 里的内容全部都正确显示了
然后创建个模板 b.htm,继承 a.html, 里面只有一句话{% block ta %}ZZ{% endblock %} 两个 id 都被替换成 ZZ
那这样的话,说明有两个同名的 block(ta)在继承后都被覆盖了,但是同一模板不能存在名称相同的 block 不是么? 还是说是其他原因????
1
wangyongbo 2016-06-05 00:31:11 +08:00
不是存在两个 名为 ta 的 block ,是名为 ta 的 block 渲染了两次
|