【发布时间】:2015-11-15 17:00:10
【问题描述】:
我是 Django 新手,遇到了一个让我很困惑的错误。我只是在整理一个基本站点并将本教程用作指南,但我遇到了有关模板的问题。我在与 manage.py 相同的目录中创建了一个模板目录,在模板中创建了一个管理目录,并按照教程在管理目录中复制/粘贴了 base_site.html。然后我更改了一些标题,保存了所有内容,重新启动了服务器,然后......什么都没有。没有错误但没有变化。就好像我什么都没做一样。我已经尝试了这里建议的各种修复,但似乎都没有。就好像找不到模板目录,所以应用程序使用默认值。以下是我目前掌握的基础知识:
目录结构:Project>App、templates>admin>base_site.html、manage.py等
在我的 settings.py 中:
import os
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
和
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
在 base_site.html 中:
<h1 id="site-name"><a href="{% url 'admin:index' %}">{{ site_header|default:_('THIS IS WHAT I CHANGED') }}</a></h1>
我真的希望有人可以在这里为我指明正确的方向。
【问题讨论】:
-
你的设置文件在App文件夹吗?
-
Settings.py 在 app 文件夹中,而不是在项目文件夹中,是的。模板文件夹位于项目文件夹中。
-
顺便说一句,你的 sn-p 对我有用。使用项目的默认结构(刚刚更新的 template_dirs)。 pastebin.com/VvErAizj
-
这对我来说真的毫无意义。如果我在整个站点上更改 BASE_DIR 会引发错误,那么这必须是正确的。
-
之前有人发了一个答案,然后又删除了,但那个答案实际上是正确的。它不得不在我的大脑后部反弹了几个小时,但它终于点击了,所以无论是谁发布了有关默认值的信息,请重新发布,以便我给予你应得的荣誉。
标签: python django templates django-admin