我是 PyCharm 的新手,我正在尝试将它用于Django开发。我的应用程序结构如下:
bs3app/
├── __init__.py
├── templates
│ └── home.html
├── urls.py
└── views.py
在bs3app/views.py
,我收到警告:
找不到模板文件'home.html'
源代码:
from django.shortcuts import render_to_response
def home(request):
return render_to_response('home.html')
模板文件位于bs3app/templates/home.html
。运行网站时home
视图正常工作。在该项目的 Django支持页面上,启用Django支持已启用, Django项目根目录,设置并且管理脚本值都是正确的。
那么,为什么我会收到警告?根据{{3}},我可以明确标记模板目录,然后警告消失,但为什么必须?考虑到项目的settings.py
文件,为什么PyCharm无法自动计算出来?
项目在this PyCharm doc page,如果您需要查看其他文件。
答案 0 :(得分:80)
只需打开project view
(查看 - >工具窗口 - >项目)。右键单击您的templates
- 文件夹 - > '将目录标记为' - >模板目录
答案 1 :(得分:14)
如果您没有,请尝试将TEMPLATE_LOADERS
添加到您的设置文件中。我认为PyCharm会查找它并且不会从Django默认设置加载它。它解决了我的问题。
settings.py:
TEMPLATE_LOADERS = (
'django.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader',
)
答案 2 :(得分:3)
如果您已将目录标记为模板目录,但仍收到警告,则可以尝试将单引号更改为双引号
def home(request):
return render_to_response('home.html')
更改为此:
def home(request):
return render_to_response("home.html")
希望这会有所帮助。
答案 3 :(得分:2)
我正在使用PyCharm 2018.2。您可以按照以下步骤将目录标记为模板目录,因此PyCharm不会发出警告,您可以通过按cmd + B
(Mac)或ctrl + B
( Windows / Linux):
答案 4 :(得分:1)
当我从设置中为项目目标分配“ Django项目根目录”时,此问题已修复。
答案 5 :(得分:0)
由于忘记在settings.INSTALLED_APPS中包含我的应用,我遇到了类似的问题。将我的应用程序添加到列表中清除了检查。