2012-03-30 148 views
1

有人告訴我,在查看settings.TEMPATE_DIRS之前,所有django應用程序都會自動查找根目錄的「templates」目錄。但是,這並不適合我。django:默認的模板文件路徑?

這是不是真的?

我在django 1.3.1上。

編輯:

事實證明,爲什麼沒有我的應用程序的URL映射裏面工作的原因,我使用django.contrib.auth.views.login一個視圖,它一直在尋找應用程序目錄內對於身份驗證。一個可能的解決方案是繼承登錄,但有沒有更好的方法來解決這個問題,所以Django會看我的應用程序目錄?

回答

4

這是相反的方式。默認情況下,Django首先查看settings.TEMPLATE_DIRS和in app文件夾。這可以通過settings.TEMPLATE_LOADERS進行自定義。缺省情況如下:

('django.template.loaders.filesystem.Loader', 
'django.template.loaders.app_directories.Loader') 

詳情點擊這裏:https://docs.djangoproject.com/en/1.4/ref/templates/api/#loader-types

但是,你爲什麼要這麼做?

+0

其實,它的設置方式就像你解釋的那樣更有意義。我也想出了爲什麼它不起作用。我的應用程序使用應用程序的視圖(django.contrib.auth.view.login),因此會在auth應用程序目錄中查看。無論如何明智地解決這個問題,除了做一個空的繼承? – user1303950 2012-03-30 18:52:35