Recientemente actualicé Django de v1.3.1 a v1.4.
En mi viejo settings.py tengo
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.
)
Esto apuntará a /Users/hobbes3/Sites/mysite/templates, pero porque Django v1.4 movió la carpeta del proyecto al mismo nivel que las carpetas de la aplicación , mi settings.pyarchivo ahora está en /Users/hobbes3/Sites/mysite/mysite/lugar de /Users/hobbes3/Sites/mysite/.
Entonces, en realidad mi pregunta ahora es doble:
- ¿Cómo uso
os.pathpara mirar un directorio un nivel superior desde__file__? En otras palabras, quiero/Users/hobbes3/Sites/mysite/mysite/settings.pyencontrar/Users/hobbes3/Sites/mysite/templatesusando rutas relativas. - Debería ser de mantenimiento de la
templatecarpeta (que tiene plantillas cruzada de aplicaciones, comoadmin,registration, etc.) en el proyecto de/User/hobbes3/Sites/mysitenivel o en/User/hobbes3/Sites/mysite/mysite?
settings.pyen varios servidores. La única diferencia podría ser las credenciales de la base de datos. Estaba leyendo la os.pathdocumentación pero no pude encontrar un comando que te permitiera subir un directorio. Al igual cd ...
os.path.join( os.path.dirname( __file__ ), '..' ) ..significar el directorio de arriba en todo el sistema de archivos, no solo cuando se pasa a cd.
os.path.join( os.path.dirname ( __file__), os.path.pardir)
osparacdque../mysite? O cualquier comando que desee