Saya baru-baru ini meningkatkan Django dari v1.3.1 ke v1.4.
Di masa lalu settings.pysaya miliki
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.
)
Ini akan menunjuk ke /Users/hobbes3/Sites/mysite/templates, tetapi karena Django v1.4 memindahkan folder proyek ke tingkat yang sama dengan folder aplikasi , settings.pyfile saya sekarang di /Users/hobbes3/Sites/mysite/mysite/bukan /Users/hobbes3/Sites/mysite/.
Jadi sebenarnya pertanyaan saya sekarang ada dua:
- Bagaimana cara saya
os.pathmelihat direktori satu tingkat di atas__file__. Dengan kata lain, saya ingin/Users/hobbes3/Sites/mysite/mysite/settings.pymencari/Users/hobbes3/Sites/mysite/templatesmenggunakan jalur relatif. - Haruskah saya menjaga
templatefolder (yang memiliki cross-aplikasi template, sepertiadmin,registration, dll) di proyek/User/hobbes3/Sites/mysitetingkat atau/User/hobbes3/Sites/mysite/mysite?
settings.pydi beberapa server. Satu-satunya perbedaan mungkin adalah kredensial basis data. Saya membaca os.pathdokumentasi tetapi saya tidak dapat menemukan perintah yang memungkinkan Anda naik satu direktori. Seperti cd ...
os.path.join( os.path.dirname( __file__ ), '..' ) ..berarti direktori di atas di seluruh sistem file, bukan hanya ketika diteruskan ke cd.
os.path.join( os.path.dirname ( __file__), os.path.pardir)
osuntukcdke../mysite? Atau perintah apa pun yang Anda inginkan