我知道这不是Django教程中的内容,不要为它们感到羞耻,但是最好为你的path变量设置相对路径。你可以这样设置:
import os
PROJECT_PATH = os.path.realpath(os.path.dirname(__file__))
...
MEDIA_ROOT = PROJECT_PATH + '/media/'
TEMPLATE_DIRS = (
PROJECT_PATH + '/templates/',
)
这样,你可以移动Django项目,并且路径根将自动更新。当你设置生产服务器时,这很有用。
其次,你的TEMPLATE_DIRS路径中存在可疑之处。它应该指向模板目录的根目录。同样,它也应该以结尾结尾/
。
我只是在这里猜测该.../admin/
目录不是你的模板根目录。如果仍要编写绝对路径,则应删除对管理模板目录的引用。
TEMPLATE_DIRS = (
'C:/django-project/myapp/mytemplates/'
)
话虽如此,默认情况下,应将模板加载器设置为递归地遍历你的应用程序目录以查找模板文件。
TEMPLATE_LOADERS = (
'django.template.loaders.filesystem.load_template_source',
'django.template.loaders.app_directories.load_template_source',
# 'django.template.loaders.eggs.load_template_source',
)
除非你特别想覆盖某些内容,否则无需复制管理模板。
如果尚未运行syncdb,则必须运行它。如果你通过runserver托管django,则还需要静态地管理媒体文件。