Django HTML5样板头和

2024-06-01 00:44:39 发布

您现在位置:Python中文网/ 问答频道 /正文

我是Django的新手,并且成功地、轻松地设置了Django-html5-boilerplate。我使用的是Django 1.6.1和Django-html5-boilerplate 1.0.8。但是,我无法计算出如何在所有子模板中显示页眉和页脚,非常感谢您的帮助。这是扩展default.htmldefault.html

{% extends 'dh5bp/base.html' %}
{% load staticfiles %}
{% load url from future %}
{% block title %}{% endblock %}
{% block head %}
<link rel="stylesheet" href="{% static "css/base.css" %}">
{% endblock %}
<header><h1>The site header</h1></header>
{% block content %}{% endblock %}
<footer><p>The site footer</p></footer>

这是index.html,它扩展了default.html

^{pr2}$

我已经(在命令行上)验证了runserver从django-html5-boilerplate安装中获取了所有静态文件,还验证了我自己的应用程序静态文件夹中的css/base.cssindex.html只显示“内容”消息,不显示页眉或页脚。但是,当我从default.html中删除第一行{% extends 'dh5bp/base.html' %}时,default.html中定义的页眉和页脚显示在index.html中。django-html5-boilerblate是否需要一些其他配置来显示页眉和页脚?事先非常感谢。在

阿西夫


Tags: djangodefaultbaseindexhtmlblockendblockcss
1条回答
网友
1楼 · 发布于 2024-06-01 00:44:39

在Django模板继承层次结构中,子模板中的所有内容都必须位于父模板的块内。你的“默认.html“不是基模板,所以所有内容都必须在一个块中-但是页眉和页脚不是,所以它们根本没有地方可去。在

它们应该在您的content块中,然后该块应该为子级定义另一个块来继承:

{% block content %}
<header><h1>The site header</h1></header>
{% block child_content %}{% endblock %}
<footer><p>The site footer</p></footer>
{% endblock %}

相关问题 更多 >