Развернуть проект django в webfaction и застрять с TemplateDoesNotExist

Я пытаюсь развернуть проект django в webfaction и застрял с проблемой, что сервер не видит мою папку шаблонов

PROJECT_DIR = os.path.dirname((os.path.dirname((os.path.dirname(__file__)))))

    TEMPLATE_DIRS = (
    os.path.join(PROJECT_DIR,'templates'),
   )

путь к Python в httpd.conf:

 python-path=/home/wadadaaa/webapps/promo_site/myproject:/home/wadadaaa/webapps/promo_site/lib/python2.7

И у меня есть исключение:

Exception Type: TemplateDoesNotExist
Exception Value: index.html 

Django tried loading these templates, in this order:
Using loader django.template.loaders.filesystem.Loader:
/home/wadadaaa/webapps/promo_site/templates/index.html (File does not exist)

есть идеи как это исправить?

1 ответ

При развертывании в WebFaction я добавляю родительский каталог проекта в python_path:

python-path=/home/wadadaaa/webapps/promo_site:/home/wadadaaa/webapps/promo_site/myproject:/home/wadadaaa/webapps/promo_site/lib/python2.7

Если вы используете Django 1.5.x, обычным способом "сопоставления" путей к каталогам, таких как TEMPLATE_DIRS, STATIC_ROOT и т. Д., Является использование функции для их вычисления. Это особенно полезно, если вы работаете более чем на одном компьютере или в группе, где путь к этим файлам будет отличаться для каждого разработчика:

# settings.py
import os

def map_path(directory_name):
    return os.path.join(os.path.dirname(__file__),
        '../' + directory_name).replace('\\', '/')
...

TEMPLATE_DIRS = (
    map_path('templates'),
)

Это удобный способ отобразить каталог шаблонов, учитывая структуру проекта:

my_app/
    my_app/
        __init__.py
        settings.py
        ...

    a_module/
        __init__.py
        models.py

    templates/
        layouts/
            base.html

        index.html
        ...
Другие вопросы по тегам