首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Django页脚和页眉,每页包含{% extends }

Django页脚和页眉,每页包含{% extends }
EN

Stack Overflow用户
提问于 2015-07-16 22:06:51
回答 3查看 38.3K关注 0票数 20

所以我试着在我的网站的每个页面上添加页脚和页眉。我制作了一个包含站点总体布局的base.html文件。

在我的about.html页面中,我做到了:

代码语言:javascript
复制
{% extends "public/base.html" %}

<h1>Content goes here</h1>

我可以看到我的页眉和页脚,但是我如何显示内容呢?我想在那个about.html页面中输入内容。内容放在这里,而不是显示在中间。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-07-16 22:12:32

您需要在base.html中定义一个块,并在about.html中填充它。

base.html:

代码语言:javascript
复制
<header>...</header>
{% block content %}{% endblock %}
<footer>...</footer>

about.html

代码语言:javascript
复制
{% extends "public/base.html" %}

{% block content %}
<h1>Content goes here</h1>
{% endblock %}

这在本教程中都有详细的解释。

票数 34
EN

Stack Overflow用户

发布于 2015-07-16 22:13:46

代码语言:javascript
复制
{% extends "public/base.html" %}
{% block content %}
<h1>Content goes here</h1>
{% endblock %}

或者简单地创建about.html并将其包含在主html中您想要的位置。

示例:

代码语言:javascript
复制
    {% extends "public/base.html" %}
    {% block content %}
       "Your code"
    {% include "core/about.html" %}
    {% endblock %}
票数 11
EN

Stack Overflow用户

发布于 2015-07-16 22:16:04

假设您的base.html如下所示:

代码语言:javascript
复制
<html>
    <body>
        <!-- header code -->
        {% block content %}
        {% endblock %}
        <!-- footer code -->
    </body>
<html>

然后在你的另一个文件中,你可以这样做:

代码语言:javascript
复制
{% extends "base.html" %}
{% block content %}
    <!-- Content here -->
{% endblock %}

放在模板(扩展文件)的body标签内的任何内容都会被子文件内容中的内容覆盖,但该标签之外的任何内容都会被扩展或复制到其中。

这里是the docs on the block tag

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31456576

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档