2016-08-11 11 views
1

Software версии: Python: 3.5.2 Джанго: 1,10шаблон Джанго вызывает ошибки 500

Я пытаюсь развернуть Джанго проект на сайте Dreamhost, но всякий раз, когда я пытаюсь расширить свои базовые шаблоны дает мне ошибка сервера 500. Мое представление отлично выглядит, пока я не включу {% extends 'base.html'%} в шаблон, который пытается просмотреть.

Что расстраивает то, что с одинаковыми файлами локальная версия разработки работает отлично (например, с помощью python manage.py runningerver).

Вот мой проект очертание:

<website.com> 
    ├─passenger_wsgi.py 
    └─simplistic 
     └──simplistic 
     | ├─__init__.py 
     | ├─settings.py 
     | ├─urls.py 
     | └─wsgi.py 
     ├──main 
     | ├─__init__.py 
     | ├─urls.py 
     | ├─views.py 
     | └─templates 
     | └─main 
     |  └─main.html 
     ├──templates 
     | └─base.html 
     └──manage.py 

Вот мой passenger_wsgi.py файл:

import sys, os 

cwd = os.getcwd() 
sys.path.append(cwd) 

INTERP = "/home/<my_user_name>/.virtualenvs/simplistic_production/bin/python" 
if sys.executable != INTERP: os.execl(INTERP, INTERP, *sys.argv) 

sys.path.append('/home/<my_user_name>/<my_website>.com/simplistic') 

os.environ['DJANGO_SETTINGS_MODULE']="simplistic.settings" 

from django.core.wsgi import get_wsgi_application 
application = get_wsgi_application() 

Вот соответствующая часть моей settings.py

import os 

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) 

TEMPLATES = [ 
     { 
      'BACKEND': 'django.template.backends.django.DjangoTemplates', 
      'DIRS': [BASE_DIR, 'templates'], 
      'APP_DIRS': True, 
      'OPTIONS': { 
       'context_processors': [ 
        'django.template.context_processors.debug', 
        'django.template.context_processors.request', 
        'django.contrib.auth.context_processors.auth', 
        'django.contrib.messages.context_processors.messages', 
       ], 
      }, 
     }, 
    ] 

I также попытались изменить значение Templates = ['DIRS':] на

/home/<username>/<website>.com/simplistic/templates 

Это также не работает.

Тот факт, что версия manage.py runningerver работает в то время, когда производственная среда не приводит меня к мысли, что может быть проблема с моим файлом user_wsgi.py, но если я изменю любой из этих путей, он сломает все (т.е. я даже не могу получить доступ к main.html с выключенным {% extends' base.html '%}).

У меня здесь полная потеря. Буду признателен за любую помощь. Благодаря!

ответ

1

Ваша установка DIRS выглядит неправильно. Вы хотите совместить BASE_DIR и 'templates'.

'DIRS': [os.path.join(BASE_DIR, 'templates')], 
+0

Это сделало трюк! Спасибо огромное! Почему производственная версия (debug = False) требует объединения, но версия для разработки (debug = True) нет? – Neighlyd

+0

Код без подключения не должен работать нигде, поэтому я не уверен, почему он работает в разработке. Возможно, у вас есть копия базового шаблона в каталоге 'simplistic' или' main/templates', который находит Django. – Alasdair