Recentemente, atualizei o Django da v1.3.1 para a v1.4.
Na minha idade settings.pyeu tenho
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.
)
Isso apontará para /Users/hobbes3/Sites/mysite/templates, mas como o Django v1.4 moveu a pasta do projeto para o mesmo nível das pastas do aplicativo , meu settings.pyarquivo está agora em /Users/hobbes3/Sites/mysite/mysite/vez de /Users/hobbes3/Sites/mysite/.
Na verdade, minha pergunta agora é dupla:
- Como eu uso
os.pathpara procurar um diretório um nível acima de__file__. Em outras palavras, eu quero/Users/hobbes3/Sites/mysite/mysite/settings.pyencontrar/Users/hobbes3/Sites/mysite/templatesusando caminhos relativos. - Devo estar mantendo a
templatepasta (que tem modelos de cross-aplicação, comoadmin,registration, etc.) para o projeto/User/hobbes3/Sites/mysitenível ou em/User/hobbes3/Sites/mysite/mysite?
settings.pyem vários servidores. A única diferença pode ser as credenciais do banco de dados. Eu estava lendo a os.pathdocumentação, mas não consegui encontrar um comando que permita que você suba um diretório. Like cd ...
os.path.join( os.path.dirname( __file__ ), '..' ) ..significa o diretório acima todo o sistema de arquivos, não apenas quando passou para cd.
os.path.join( os.path.dirname ( __file__), os.path.pardir)
osparacda../mysite? Ou qualquer comando que você quer