django - Heroku Django,模板不存在错误
问题描述
所以经过几个深夜的工作,我终于把我的应用程序部署到了 Heroku 上,但现在一个不同的问题,不眠之夜,模板不存在
错误,我使用的是Django.1.11,所以我的设置如下;
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'storages',
'photos',
]
并且我的模板如下,从文档中,安装的应用程序(APP_DIR 设置为真)将在应用程序中查找模板文件夹。
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [],
'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',
],
},
},
]
最后是我的应用程序结构;
|mysite
|照片
----|模板
--------|照片
------------|index.html
当我加载页面时,我可以从日志中看到;
Using engine django:
django.template.loaders.app_directories.Loader: /app/.heroku/python/lib/python2.7/site-packages/django/contrib/admin/templates/photos/index.html (Source does not exist)
django.template.loaders.app_directories.Loader: /app/.heroku/python/lib/python2.7/site-packages/django/contrib/auth/templates/photos/index.html (Source does not exist)
django.template.loaders.app_directories.Loader: /app/photos/templates/photos/index.html (Source does not exist)
最后一行,显示了正确的路径,但不知何故,找不到,我真的不知道为什么,有人能指点一下吗!
谢谢吉米
解决方案
如果要显式添加模板文件夹的路径,可以这样设置:
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [
os.path.join(BASE_DIR,'photos/templates/photos/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',
],
},
},
]
推荐阅读
- github - Github 开发分支合并到 master 显示比预期更多的历史
- php - 如何将包含数组的 JSON 表迁移到 SQL?
- java - 以 20 秒的可见时间向 AWS SQS 发布消息
- c# - 如何找到树中的下一个节点?
- mysql - Mysql - 如何从没有关系的表中选择记录
- python - 使用来自 python 文件的自定义 shell 命令
- python - Docker compose [emerg] 1#1:在 /etc/nginx/conf.d/default.conf:9 的上游“应用程序”中找不到主机
- rapids - ModuleNotFoundError:谷歌 colab 中没有名为“cudf”的模块
- ruby-on-rails - Form_with, using a range, output pdf, get instead of post Ruby on Rails
- metal - 从 GPU 上的矩阵乘法中受益的最小矩阵大小