1
應該是一個簡單的答案,但我似乎並沒有得到它。Django 1.6:通過應用程序模板擴展項目模板
Django 1.4曾經有一個文件夾templates
與每個應用程序的子文件夾。然後我會通過書面形式延長主模板:
{% extend "base.html" %} #extending the master
{% extend "app/base.html" %} #extending another template from an app
然而,在Django 1.6 documentation每個應用程序查找它自己的文件夾templates
:
...我們把這個應用程序的模板目錄(民意調查/模板),而不是項目的(模板)...
。這對於模塊化來說是很好的。但是當我嘗試擴展項目的base.html(所有應用程序都應該擴展)時,我得到TemplateDoesNotExist
錯誤。我試圖糾正以不同的方式的路徑,但它沒有工作:
base.html
templates/base.html
../templates/base.html
../../templates/base.html
../../../templates/base.html
projectname/templates/base.html
projectname/base.html
如果你有一個想法如何使這項工作,請讓我知道。
乾杯! 第
聽起來對我來說就像一個settings.TEMPLATE_DIRS問題。你能分享它和其他相關信息(你的項目佈局等)嗎? – yuvi
你從哪裏讀到「在Django 1.6中,每個應用程序都會查找它自己的模板文件夾。」 ? –
@yuvi,事實上,默認設置文件中缺少模板目錄。添加它,它現在與'{%extends「base.html」%}'一起工作正確答案,所以我將其標記爲正確 – mgPePe