我试图将myapp
部署到Heroku。我按照文档进行操作,但现在遇到了这个错误:
TemplateDoesNotExist at /
login_home.html
Request Method: GET
Request URL: http://myapp.herokuapp.com/
Django Version: 1.7.4
Exception Type: TemplateDoesNotExist
Exception Value:
login_home.html
Exception Location: /app/.heroku/python/lib/python2.7/site-packages/django/template/loader.py in find_template, line 136
Python Executable: /app/.heroku/python/bin/python
Python Version: 2.7.9
Python Path:
['/app',
'/app/.heroku/python/bin',
'/app/.heroku/python/lib/python2.7/site-packages/setuptools-11.3.1-py2.7.egg',
'/app/.heroku/python/lib/python2.7/site-packages/pip-6.0.6-py2.7.egg',
'/app',
'/app/.heroku/python/lib/python27.zip',
'/app/.heroku/python/lib/python2.7',
'/app/.heroku/python/lib/python2.7/plat-linux2',
'/app/.heroku/python/lib/python2.7/lib-tk',
'/app/.heroku/python/lib/python2.7/lib-old',
'/app/.heroku/python/lib/python2.7/lib-dynload',
'/app/.heroku/python/lib/python2.7/site-packages']
Server time: Thu, 29 Jan 2015 14:24:21 -0500
设置告诉我我的模板可以在/myapp/static/templates/
找到,这在当地是正确的。
我已经看过几篇关于类似问题的帖子,但都没有解决我的问题。
请帮忙!
erip
修改
以下是我settings.py
BASE_DIR = os.path.dirname(os.path.dirname(__file__))
TEMPLATE_DIRS = (
os.path.join(os.path.dirname(BASE_DIR), "myapp", "static", "templates"),
)
答案 0 :(得分:0)
我已经停止使用Heroku了,但我快速浏览了一下我知道曾在那里举办过的项目。我记得使用the path.py module解决了与文件系统相关的很多问题。
对于它的价值,这些是我与模板相关的设置:
from path import Path
PROJECT_ROOT = Path(__file__).abspath().dirname().dirname()
TEMPLATE_DIRS = (
PROJECT_ROOT / 'templates',
)
试一试,我会说。