Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html Django模板中具有独特主页布局的网站_Html_Django_Django Templates - Fatal编程技术网

Html Django模板中具有独特主页布局的网站

Html Django模板中具有独特主页布局的网站,html,django,django-templates,Html,Django,Django Templates,我正在建立一个独特的网页设计网站(网页有不同的标题和标志安排比所有其他网页)。但是,我希望有一个基础模板,所有内容都继承自该模板,以减少冗余 -base.html -basehome.html (inherits from base.html) -basesecond.html (inherits from base.html) -about.html (inherits from basesecond.html) -etc... 因此base.html保存html声明

我正在建立一个独特的网页设计网站(网页有不同的标题和标志安排比所有其他网页)。但是,我希望有一个基础模板,所有内容都继承自该模板,以减少冗余

-base.html
  -basehome.html (inherits from base.html)
  -basesecond.html (inherits from base.html)
    -about.html (inherits from basesecond.html)
    -etc...
因此base.html保存html声明和结构。Basehome.html和basesecond.html包含不同的标题结构,站点上的各种其他页面继承自basesecond.html

所以我一直遇到的问题是,似乎我需要在块中放置一个块来处理显然包含(最远)子模板的主体内容。据我所知,Django不让你这么做

base.html--

basesecond.html--


解决此问题的最佳方法是什么?

如果您正使用您所显示的内容,则需要重新编写一小部分:

而不是这个

{% block unique about page sidebar %}{% endblock %}
换成这个

{% block unique %}{% endblock %}
{% block about %}{% endblock %}
{% block page %}{% endblock %}
{% block sidebar %}{% endblock %}

否则,一切看起来都应该正常。哪些错误代码或行为是您不希望看到的?

什么问题?实际上,在Django模板中嵌套这样的块并没有任何问题。您是否遇到错误?Django模板需要记住的一点是,子模板中包含的块可以覆盖或扩展父模板中的块。有时,我会在子模板中放入空块,以覆盖父块,从而避免在每个子模板上添加代码。模板系统非常灵活。我想你可以把你的侧边栏块放在父模板中,只在你的“关于”页面上填写,没有任何问题。伙计们,谢谢你们的输入。S.O.如何承认你在问题中犯了愚蠢的错误?看起来我重复使用了两次块名。我得到了模板Syntaxerror。
{% extends "base.html" %}

{% block bodyholder %}bodysecond{% endblock %}

{% block hd %}
    small logo and narrow header
{% endblock %}

{% block bd %}
    second page body content
    here is where I want to put extra blocks like
    {% block unique about page sidebar %}{% endblock %}
    but it breaks the template system
{% endblock %}
{% block unique about page sidebar %}{% endblock %}
{% block unique %}{% endblock %}
{% block about %}{% endblock %}
{% block page %}{% endblock %}
{% block sidebar %}{% endblock %}