根据documentation,如果我在应用程序的根目录中有一个名为“templates”的文件夹,django应该自动从我的应用程序加载模板。
我添加了我的应用
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
# 'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
# Uncomment the next line to enable the admin:
'django.contrib.admin',
# Uncomment the next line to enable admin documentation:
'django.contrib.admindocs',
# Use email as username https://github.com/dabapps/django-email-as-username
'emailusernames',
'purchaseapp' # this is my app
)
我已经创建了一个模板文件夹
我设置了urlpatterns以使用admin作为登录页面
urlpatterns = patterns('',
# Examples:
# url(r'^$', 'timely.views.home', name='home'),
# url(r'^timely/', include('timely.foo.urls')),
# Uncomment the admin/doc line below to enable admin documentation:
url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
# Uncomment the next line to enable the admin:
url(r'^admin/', include(admin.site.urls)),
url(r'^$', hello),
url(r'^accounts/logout/$', 'django.contrib.auth.views.logout'),
url(r'^accounts/login/$', 'django.contrib.auth.views.login', {'template_name': 'admin/login.html'}),
url(r'^accounts/$', 'django.views.generic.simple.redirect_to', {'url': '/'}),
url(r'^accounts/profile/$', 'django.views.generic.simple.redirect_to', {'url': '/'}),
)
我覆盖了base_site.html,但我看不到我的自定义,我看到它是否将文件夹添加到TEMPLATE_DIRS
TEMPLATE_DIRS = (
"/Users/nicola/Documents/Aptana Studio 3 Workspace/timely/purchaseapp/templates",
# Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
# Always use forward slashes, even on Windows.
# Don't forget to use absolute paths, not relative paths.
)
我做错了什么?
答案 0 :(得分:0)
您需要在管理员(来自docs)下创建更多目录:
要覆盖其中一个或多个,请先创建一个管理员 项目模板目录中的目录。这可以是任何一个 您在TEMPLATE_DIRS中指定的目录。
在此管理目录中,创建以您的名字命名的子目录 应用程序。在这些app子目录中创建名为的子目录 在您的模型之后。请注意,管理员应用程序将小写模型 查找目录时的名称,因此请确保将其命名为 如果要在a上运行应用程序,则全部小写的目录 区分大小写的文件系统。
要覆盖特定应用的管理模板,请复制并编辑 来自django / contrib / admin / templates / admin目录的模板,以及 将其保存到您刚创建的目录之一。
答案 1 :(得分:0)
问题是django可能会在找到有效模板时停止搜索,所以我的应用程序必须先来自contrib admin
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
# 'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
'purchaseapp', #this is my app
# Uncomment the next line to enable the admin:
'django.contrib.admin',
# Uncomment the next line to enable admin documentation:
'django.contrib.admindocs',
# Use email as username https://github.com/dabapps/django-email-as-username
'emailusernames',
)