Django提示Template not found,找不到UserAccount对应模板文件如何解决
问题原因排查&解决方案
1. 模板目录结构不符合Django约定
- Django默认查找应用内模板的规则为
[应用名]/templates/[应用名]/[模板文件名],你需要确认路径完全匹配:
正确路径示例:UserAccount/templates/UserAccount/login.html - 注意:目录/文件名大小写敏感,Linux/macOS环境下
UserAccount和useraccount会被识别为不同目录,会直接导致找不到模板。
2. 模板配置未开启应用目录扫描
检查项目settings.py中的TEMPLATES配置项,确保APP_DIRS值为True,只有开启该配置Django才会主动扫描每个已注册应用下的templates目录:
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', ], }, }, ]
3. 应用注册信息不匹配
确认settings.py的INSTALLED_APPS列表中添加的应用名称,和实际应用目录名、模板路径前缀的大小写完全一致:
INSTALLED_APPS = [ # 其他系统默认应用 'UserAccount', ]
4. 模板文件名拼写错误
检查模板文件的后缀、拼写是否和视图中引用的UserAccount/login.html完全匹配,避免出现Login.html、login.htm这类拼写差异。
内容的提问来源于stack exchange,提问作者reza hashemian
相关产品推荐
相关产品推荐

