2016-08-11 5 views
1

소프트웨어 버전을 유발 나는 DreamHost는 사이트 상에 장고 프로젝트를 배포하기 위해 노력하고있어,하지만 난 내 기본 템플릿을 확장하려고 할 때마다 준다 1.10장고 템플릿 오류 500

me a Server Error 500. 뷰가 렌더링하려고하는 템플릿에 {% extends 'base.html'%}을 포함시킬 때까지 내 뷰가 잘 렌더링된다.

정확히 동일한 파일을 사용하면 로컬 개발 버전이 잘 작동합니다 (예 : python manage.py runserver 사용). 여기

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의 관련 부분입니다 : 여기

<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 파일입니다 : 여기

내 프로젝트 개요입니다 또한 Templates = [ 'DIRS':] 항목을

로 변경하려고 시도했습니다. 10
/home/<username>/<website>.com/simplistic/templates 

이것은 작동하지 않습니다.

프로덕션 환경에서 manage.py runserver 버전이 작동한다고해서 승객 _wsgi.py 파일에 문제가있는 것으로 믿을 수는 없지만 모든 경로가 변경되면 모든 것이 손상됩니다 즉, {% extend 'base.html'%}이 꺼진 상태에서 main.html에 액세스 할 수 없습니다.

나는 완전히 손실되었습니다. 나는 어떤 도움을 주셔서 감사합니다. 감사!

답변

1

DIRS 설정이 잘못되었습니다. BASE_DIR'templates'을 결합하고 싶습니다.

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

그건 속임수 였어! 정말 고맙습니다! 프로덕션 버전 (debug = False)이 조인을 요구하지만 개발 버전 (debug = True)이 아닌 이유는 무엇입니까? – Neighlyd

+0

조인이없는 코드는 어디서나 작동해서는 안되며, 개발에서 왜 작동하는지 모르겠습니다. Django가 찾고있는'simplic' 또는'main/templates' 디렉토리에 기본 템플릿의 복사본이있을 것입니다. – Alasdair