【发布时间】:2015-10-06 00:55:45
【问题描述】:
所以我试图在我网站的每个页面上添加页脚和页眉。我制作了一个包含网站总体布局的 base.html 文件。
在我的 about.html 页面中,我做了:
{% extends "public/base.html" %}
<h1>Content goes here</h1>
我可以看到我的页眉和页脚,但如何显示内容。我想在 about.html 页面中输入内容。此处的内容没有显示在中间。
【问题讨论】:
所以我试图在我网站的每个页面上添加页脚和页眉。我制作了一个包含网站总体布局的 base.html 文件。
在我的 about.html 页面中,我做了:
{% extends "public/base.html" %}
<h1>Content goes here</h1>
我可以看到我的页眉和页脚,但如何显示内容。我想在 about.html 页面中输入内容。此处的内容没有显示在中间。
【问题讨论】:
你需要在 base.html 中定义一个块,并在 about.html 中填充它。
base.html:
<header>...</header>
{% block content %}{% endblock %}
<footer>...</footer>
关于.html
{% extends "public/base.html" %}
{% block content %}
<h1>Content goes here</h1>
{% endblock %}
这一切在教程中都有完整的解释。
【讨论】:
{% load staticfiles %}。更多信息:docs.djangoproject.com/en/1.8/howto/static-files 另外,如果正确,请将答案标记为正确。
{% extends "public/base.html" %}。尽管如此,一个易于理解的答案非常感谢!
{% extends "public/base.html" %}
{% block content %}
<h1>Content goes here</h1>
{% endblock %}
或者简单地创建about.html 并将其包含在主 html 中您想要的位置。
例子:
{% extends "public/base.html" %}
{% block content %}
"Your code"
{% include "core/about.html" %}
{% endblock %}
【讨论】:
假设您的 base.html 如下所示:
<html>
<body>
<!-- header code -->
{% block content %}
{% endblock %}
<!-- footer code -->
</body>
<html>
然后在你的其他文件中你会这样做:
{% extends "base.html" %}
{% block content %}
<!-- Content here -->
{% endblock %}
任何放置在模板(扩展文件)正文标签内的内容都会被子文件内容中的内容覆盖,但该标签之外的任何内容都会被扩展或复制到其中。
【讨论】:
{% block content %} 开头,而不是{% block body %}。