我最近将Django从v1.3.1升级到了v1.4。
在我的旧
这将指向
所以,实际上我的问题现在是双重的:
在我的旧
settings.py
文件中:TEMPLATE_DIRS = (
os.path.join(os.path.dirname( __file__ ), 'templates').replace('\\', '/'),
# 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.
)
这将指向
/Users/hobbes3/Sites/mysite/templates
,但是Django v1.4将项目文件夹移动到与应用程序文件夹相同的级别, 所以我的settings.py
文件现在位于/Users/hobbes3/Sites/mysite/mysite/
而不是/Users/hobbes3/Sites/mysite/
。所以,实际上我的问题现在是双重的:
- 我该如何使用
os.path
来查看位于__file__
上一级的目录。换句话说,我希望通过相对路径,在/Users/hobbes3/Sites/mysite/mysite/settings.py
中找到/Users/hobbes3/Sites/mysite/templates
。 - 我应该将包含跨应用程序模板(如
admin
、registration
等)的template
文件夹放在项目/User/hobbes3/Sites/mysite
的级别还是/User/hobbes3/Sites/mysite/mysite
的级别?
os
命令来切换到../mysite
目录吗?或者你需要的任何其他命令。 - prelicsettings.py
文件。唯一可能不同的是数据库凭据。我正在阅读os.path
文档,但我找不到一个命令可以让你进入上一级目录,就像cd ..
。 - hobbes3os.path.join( os.path.dirname( __file__ ), '..' )
。在整个文件系统中,..
表示 _上一级目录_,而不仅仅是在cd
命令中使用。 - Michael Berkowskios.path.join(os.path.dirname(__file__), os.path.pardir)
。 - mgilson