我有一段html,我想在所有页面中都显示,除了一个。如果不是这个页面,我会把它放在base.html
并扩展。django模板扩展 - 除了一个模板外,其余都只有一个
除了将代码单独放入所有必需的页面之外,还有其他方法吗?
我有一段html,我想在所有页面中都显示,除了一个。如果不是这个页面,我会把它放在base.html
并扩展。django模板扩展 - 除了一个模板外,其余都只有一个
除了将代码单独放入所有必需的页面之外,还有其他方法吗?
你可以把它放到一个没有被覆盖的块中,以便忽略它。例如:
base.html文件
{% block content %}
<div>
This should show on all pages except for this one
</div>
{% endblock content %}
包括-page.html中(股利将在本页)
{% extends 'base.html' %}
忽略-page.html中 (本页将忽略div)
{% extends 'base.html' %}
{% block content %}
{% endblock content %}
从模板继承docs,
模板引擎会注意到{%块%}标签base.html文件并用子模板的内容替换这些块。
但
如果子模板没有定义的块,从 父模板中的值来代替。始终使用父模板中{%block%}标记中的内容作为后备。
因此,在这种情况下,您可以在base.html中使用{%block%}标记。
{% block content %}
<!-- Your content here-->
{% endblock %}
您不必在每个模板来定义该块作为父{%块%}用作备用。
{% extends 'base.html' %}
所以在你的特殊情况,只是定义{%块%}标签没有数据或别的东西。
{% extends 'base.html' %}
{% block content %}
<!-- Nothing goes here -->
{% endblock content %}