2011-12-31 71 views
0

我在django項目中有2個應用程序。我想爲change_list.html中的2個不同的應用程序添加不同的小部件。在settings.py中,在兩個應用程序的模板的管理目錄中分別添加change_list.html後,在TEMPLATE_DIRS =( 「/ home/path/project/application1/templates」, 「/ home/path /項目/應用程序2 /模板「,
如何在同一個django項目中爲2個應用程序使用2個不同的change_list.html

我注意到,所考慮的change_list.html模板來自application1。只有當我評論它時,纔會考慮application2的模板。怎麼去?我希望他們兩個被認爲是兩種不同的應用程序。請建議。

回答

0

閱讀壓倒一切的管理模板部分:https://docs.djangoproject.com/en/dev/ref/contrib/admin/#overriding-admin-templates(更具體https://docs.djangoproject.com/en/dev/ref/contrib/admin/#templates-which-may-be-overridden-per-app-or-model

將您change_list.html在由TEMPLATE_DIRS或模板裝載機之一,該模板解析的文件夾的一個admin/application1將只擔任了application1

你目前的代碼總是告訴django在第一個路徑上優先匹配第一條路徑上的匹配。

+0

我已將change_list.html放在2個差異下。像這樣的應用程序:/home/project/application1/templates/admin/change_list.html /home/project/application2/templates/admin/change_list.html。在settings.py中我添加了:TEMPLATE_DIRS =( 「/ home/project/application1/templates」, 「/ home/project/application2/templates」, ) admin文件夾位於application/templates /我在其中放置了2個不同的change_list.html。如果訂單被更改或廣告我錯過了settings.py中的某些內容?請指導。 – user956424 2012-01-06 03:26:19

+1

向您展示一個確切的示例:將'/ home/project/application1/templates/admin/change_list.html'移動到'/ home/project/application1/templates/admin/application1/change_list.html'並將'/ home /項目/ application2/templates/admin/change_list.html'到'/ home/project/application1/templates/admin/application2/change_list.html' – 2012-01-06 05:44:18

+0

謝謝Yuji,我遵循你的指示,現在效果很好!它需要仔細閱讀,尤其是上面提到的鏈接! – user956424 2012-01-06 05:52:38

相關問題