我有3个模板文件,分别名为**base.html**
,**navbar.html**
和**dashboard.html**
。
base.html
是具有**{% block content %}**
的主要父文件。
导航栏具有**{% block navtitle %}**
。
现在我想做的是,我想在**navtitle**
文件中'dashboard.html'
块。
navbar.html
和dashboard.html
都扩展了**base.html**
。我可以从**content**
文件中获取base.html
块,但不能获取 navbar 块。
请指导我该怎么做
以下示例文件
base.html
{% block content %} {% endblock %}
navbar.html
{% extends 'base.html' %}
{% block navtitle %} {% endblock %}
dashboard.html
{% extends 'base.html' %}
{% block content %} Demo {% endblock %} # Able to print it
{% block navtitle %} Demo 2 {% endblock %} # Not able to print it
我还尝试将navbar.html文件扩展到dashboard.html文件中,但还是没有运气。
答案 0 :(得分:0)
使用继承(1/2)
base.html
{% block content %} {% endblock %}
{% block navtitle %} {% endblock %}
dashboard.html
{% extends 'base.html' %}
{% block content %} Demo {% endblock %}
{% block navtitle %} Demo 2 {% endblock %}
使用继承(2/2)
在某些模板仅从base.html
继承而其他模板从navbar.html
base.html
{% block content %} {% endblock %}
{% block navtitle %} {% endblock %}
navbar.html
{% extends 'base.html' %}
{% block navtitle %} {% endblock %}
dashboard.html
{% extends 'navbar.html' %}
{% block content %} Demo {% endblock %}
{% block navtitle %} Demo 2 {% endblock %}
使用包含
base.html
{% block content %} {% endblock %}
{% include "path/to/navbar.html" %}
navbar.html
<div>Some html</div>
dashboard.html
{% extends 'base.html' %}
{% block content %} Demo {% endblock %}
{% block navtitle %} Demo 2 {% endblock %}
结帐django的include和inheritance的模板文档