blacklinux
V2EX  ›  Django

django 模板的一些问题

  •  
  •   blacklinux · Jun 4, 2016 · 3306 views
    This topic created in 3712 days ago, the information mentioned may be changed or developed.

    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 replies    2016-06-05 00:31:11 +08:00
    wangyongbo
        1
    wangyongbo  
       Jun 5, 2016
    不是存在两个 名为 ta 的 block ,是名为 ta 的 block 渲染了两次
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5808 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 55ms · UTC 03:35 · PVG 11:35 · LAX 20:35 · JFK 23:35
    ♥ Do have faith in what you're doing.