内容 Django 模板继承的正确方法<head>



我有一个base.html模板与全站标签的字符集,谷歌网站验证,样式表,js....我还需要为页面特定的标题标签和元描述设置块。

我想知道,我应该在我的base.html和我继承的模板中设置一个{% block head %},或者我应该设置特定的块,如{% block meta %}和{% block title %},以便在Django呈现html时标签出现在适当的位置。

这有意义吗?如果我查看源代码与所有标签混合在一个{%块头%}的东西有点乱,但如果我为每个标签添加特定的块,它们是有序的,但使用更多的代码…?

我通常有三个块。在过去的一年半里,这三个已经满足了我和我同事的所有需求:-)

  • css block

  • 一个名为"head-extras"的块。通常,您希望在逐页的基础上做一些特别的事情,例如添加指向rss提要的链接元素。或者一些内联javascript片段。使用此块,您可以以一种清晰的方式允许这些极端情况。

在扩展基模板的模板中,你可以在css和javascript块中使用{{ super }}来获取"parent's"列表,并用你自己的扩展它。

我也有一个头块在整个东西周围的少数情况下,你只是想覆盖所有的头:-)

相关内容

最新更新