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.py
archivo 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.path
para mirar un directorio un nivel superior desde__file__
? En otras palabras, quiero/Users/hobbes3/Sites/mysite/mysite/settings.py
encontrar/Users/hobbes3/Sites/mysite/templates
usando rutas relativas. - Debería ser de mantenimiento de la
template
carpeta (que tiene plantillas cruzada de aplicaciones, comoadmin
,registration
, etc.) en el proyecto de/User/hobbes3/Sites/mysite
nivel o en/User/hobbes3/Sites/mysite/mysite
?
settings.py
en varios servidores. La única diferencia podría ser las credenciales de la base de datos. Estaba leyendo la os.path
documentació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)
os
paracd
que../mysite
? O cualquier comando que desee