Python Django教程自定义管理模板

Python Django教程自定义管理模板,python,django,Python,Django,我正在学习官方的Django教程。最后,他们让你定制一点管理模板(更改一些标题文本)。我认为我做的一切都是对的,但显然我没有,因为在运行syncdb并重新启动服务器后,管理站点看起来完全一样。我的项目目录(不包括virtualenv部分)如下所示: mysite ├── manage.py ├── mysite │   ├── __init__.py │   ├── __init__.pyc │   ├── settings.py │   ├── settings.pyc │   ├── url

我正在学习官方的Django教程。最后,他们让你定制一点管理模板(更改一些标题文本)。我认为我做的一切都是对的,但显然我没有,因为在运行syncdb并重新启动服务器后,管理站点看起来完全一样。我的项目目录(不包括virtualenv部分)如下所示:

mysite
├── manage.py
├── mysite
│   ├── __init__.py
│   ├── __init__.pyc
│   ├── settings.py
│   ├── settings.pyc
│   ├── urls.py
│   ├── urls.pyc
│   ├── wsgi.py
│   └── wsgi.pyc
├── polls
│   ├── admin.py
│   ├── admin.pyc
│   ├── __init__.py
│   ├── __init__.pyc
│   ├── models.py
│   ├── models.pyc
│   ├── tests.py
│   └── views.py
└── templates
    └── admin
        └── base_site.html
在settings.py中,我添加了以下行,以使项目使用templates/admin中的模板:

import os
PROJECT_PATH = os.path.realpath(os.path.dirname(__file__))
后来:

TEMPLATE_DIRS = (os.path.join(PROJECT_PATH, 'templates'),)
我尝试了几种斜杠和变体的组合,将值分配给
PROJECT\u PATH
TEMPLATE\u DIRS
,但没有任何效果。每次我验证它实际上是在生成一个filepath字符串(使用一个简单的print语句)

为了看看发生了什么,我编辑了原来的Django base_site.html,将其放在了管理文件夹中,这改变了我的网站,所以它显然仍然在使用它。我读过好几篇这样的帖子,我真的不知道该怎么办了


哦,如果相关的话:Python 2.7.3和Django 1.4.3

我会尝试的第一件事是删除你的*.pyc文件,它们通常包含过时的信息,有时会导致类似这样的问题

如果不是这样,我会再次检查您的
项目路径
,我认为这就是问题所在

dirname
获取包含目录。因此,如果该行位于settings.py中,它将返回主mysite中的
/path/to/internal/mysite
,因为在您的internal
mysite
中没有
templates
目录,所以它不会工作

你需要做的就是这样

PROJECT_PATH = os.path.realpath(os.path.dirname(os.path.dirname(__file__))) 
它将返回外部
mysite
路径,当与模板组合时,它将返回正确的路径


然后一切都会起作用

关于我的项目路径变量出错,你说得完全正确。将其修改为您的,效果完美。谢谢