【问题标题】:django template inheritance use same tag multiple templatesdjango模板继承使用相同标签多个模板
【发布时间】:2012-10-07 19:57:39
【问题描述】:

我正在使用 django 模板系统,尽管有一种方法可以为多个模板使用相同的变量继承标记,而无需从另一个模板中提取数据。

<div id="content-container3">

{% block content-container2 %}{% endblock %}

</div>

所以我想在说 people.html 模板和 test.html 模板中使用上述内容。

例如: {% 扩展“base.html”} {% block content-container2 %}{% endblock %}

虽然在这种情况下它交叉引用了来自两个模板的信息 - 每个变量继承标记是否必须是唯一的?

【问题讨论】:

  • 你能用你期望的模板行为的例子来扩展你的问题吗?

标签: html django django-templates


【解决方案1】:

我认为您应该尝试像下面的示例那样嵌套块。

{% block first_section %}
    {% block first_section_upper %}
      {{block.super}}
    {% endblock first_section_upper %}

      <h1 class="display-5">Some content</h1>
      <h5 style="color: white !important;" class="display-5"> *Your text here*</h5>

      <p class="lead">The Algorithms that run our Universe</p>

    {% block first_section_lower %}
      {{block.super}}
    {% endblock first_section_lower %}
{% endblock first_section %}

每个新模板的 h1 标签和 p 标签可以不同。据我所知,这可能会解决您的问题。

【讨论】:

    【解决方案2】:

    尝试将这部分代码移动到不同的文件(content_container3.html)并使用include标签...否则我不明白你的问题:)

    【讨论】:

    • 嗨 chmeliuk-base.html 和子模板中都包含该标签。虽然我想在另一个子模板中使用相同的标签并且毫不奇怪它会跨越另一个子模板的信息 - 所以,我确信有办法解决这个问题,也许可以创建自定义标签?
    猜你喜欢
    • 2011-06-26
    • 1970-01-01
    • 2013-01-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-07
    • 2011-06-15
    相关资源
    最近更新 更多