2012-03-30 4 views
1

Кто-то сказал мне, что все приложения django автоматически заглядывают в каталог корневых приложений для каталога «templates», прежде чем смотреть в settings.TEMPATE_DIRS. Однако это не сработало для меня.django: путь к файлу шаблона по умолчанию?

Не правда ли?

Я нахожусь на django 1.3.1.

редактировать:

Оказывается, причина, почему он не работает в отображении URL-адрес моего приложения, я использую вид из django.contrib.auth.views.login так смотрел внутри приложения реж для auth. Возможное решение - наследовать логин, но есть ли лучший способ разрешить это, чтобы django заглянул внутрь моего приложения?

ответ

4

Это наоборот. По умолчанию Django сначала смотрит в settings.TEMPLATE_DIRS и в папках приложений. Это можно настроить с помощью 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 app. В любом случае, чтобы разумно исправить это, кроме создания пустого наследования? – user1303950