复写模板
若应用和工程的模板模板都包含被重写的模板,默认的 Django 模板加载器会先尝试加载工程目录下的模板。换句话说,先查找 DIRS
,其次 。
参见
阅读 重写内置视图模板 若你正在找相关资料。
假设你正在重写第三方应用 blog
的模板,该应用提供了 blog/post.html
和 blog/list.html
模板。工程关键配置如下:
若用模板工程模板创建工程,则 TEMPLATES
和 早已存在。需要修改的配置是 。
这些配置假定在工程根目录下有个 templates
目录。要重写 blog
应用的模板,在 templates
目录中创建一个文件夹,然后将以下模板文件添加至该目录:
重写来自应用模板目录的模板
由于重写的模板位于工程应用之外,更常见的做法是使用第一个方法,然后将重写的模板置于工程模板目录。然而,如果你偏爱将重写的模板放入应用模板目录,也是可以的。
首先,确保模板配置会搜索应用模板目录:
若你想重写名为 blog/list.html
和 blog/post.html
的模板,并将它们置于名为 myapp
的应用中,那么目录结构应该看起来像这样: