You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django中TemplateDoesNotExist报错求助:无法渲染homepage.html

解决Django TemplateDoesNotExist错误(homepage.html)

问题根源

根据你提供的目录结构和配置,核心问题是模板路径配置错误。你的templates目录位于travellProj项目目录下,但当前settings.py中的DIRS指向的是项目父目录下的templates,导致Django找不到目标模板文件。

具体解决步骤

1. 修正模板路径配置

打开travellProj/settings.py,找到TEMPLATES配置块中的DIRS项,将其修改为指向travellProj目录下的templates:

使用os.path方式:

"TEMPLATES": [
    {
        # 保留其他原有配置项
        "DIRS": [os.path.join(BASE_DIR, 'travellProj', 'templates')],
        # 保留其他原有配置项
    },
]

或者更推荐的Django 3.0+ Path语法:

"TEMPLATES": [
    {
        # 保留其他原有配置项
        "DIRS": [BASE_DIR / 'travellProj' / 'templates'],
        # 保留其他原有配置项
    },
]

2. 确认BASE_DIR定义正确

检查settings.py顶部的BASE_DIR定义,确保它指向包含travellProj和travello的父目录,默认配置如下(无需修改):

from pathlib import Path

BASE_DIR = Path(__file__).resolve().parent.parent

3. 注册应用到INSTALLED_APPS

在settings.py的INSTALLED_APPS中添加你的travello应用,避免视图所在应用未注册引发潜在问题:

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'travello',  # 添加此行
]

4. 验证模板文件与路径

  • 确认homepage.html确实存放在travellProj/templates/目录下
  • 检查文件名拼写(如大小写、是否多写/漏写字符),Windows系统不区分大小写,但保持命名一致更稳妥

5. 重启开发服务器

修改配置后,重启Django开发服务器确保配置生效:

python manage.py runserver

额外排查项(若上述步骤未解决)

  • 运行python manage.py clearcache清除Django缓存(Django 4.0+支持)
  • 手动核对模板目录的绝对路径,确保与settings.py中配置的一致

内容的提问来源于stack exchange,提问作者Abhishek K M

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 20:41:06