V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
blacklinux
V2EX  ›  Django

django 模板的一些问题

  •  
  •   blacklinux · 2016-06-04 20:51:09 +08:00 · 2805 次点击
    这是一个创建于 3119 天前的主题,其中的信息可能已经有所发展或是发生改变。

    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 条回复    2016-06-05 00:31:11 +08:00
    wangyongbo
        1
    wangyongbo  
       2016-06-05 00:31:11 +08:00
    不是存在两个 名为 ta 的 block ,是名为 ta 的 block 渲染了两次
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3104 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 13:45 · PVG 21:45 · LAX 05:45 · JFK 08:45
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.