
django 在一个模板中同名的 block 应该是只能有一个
然后假设 test = [{'id':1,'name':"第一个块"},{'id':2,'name':"第二个块"}]
模板 a.html 里有这样的语句
{%forxintest%}
{%blockta%}{{x.id}}{%endblock%}
{%blocktb%}{{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 渲染了两次 |