Книга Django предлагает использовать os.path.join
(и использовать косую черту вместо обратной косой черты в Windows):
import os.path
TEMPLATE_DIRS = (
os.path.join(os.path.dirname(__file__), 'templates').replace('\\','/'),
)
Я думаю, что это лучшее решение, так как вы можете легко создавать относительные пути, подобные этому. Если у вас есть несколько относительных путей, вспомогательная функция сократит код:
def fromRelativePath(*relativeComponents):
return os.path.join(os.path.dirname(__file__), *relativeComponents).replace("\\","/")
Если вам нужны абсолютные пути, вы должны использовать переменную окружения (с os.environ["MY_APP_PATH"]
) в сочетании с os.path.join
.