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

Django中{% include %}标签抛出TemplateDoesNotExist错误的求助

解决Django中{% include %}找不到同目录模板的问题

嘿,我之前也踩过这个坑!既然你已经确认文件名拼写无误,且base.html和navbar.html在同一文件夹,那问题大概率出在Django的模板查找配置或者加载逻辑上,给你几个具体的排查和解决方向:

1. 检查项目的模板路径配置(settings.py)

Django的模板加载器默认会从两个地方找模板:已安装app的templates目录,以及TEMPLATES配置里DIRS指定的路径。你需要确认你的模板目录被正确配置:

  • 如果你的模板文件放在项目根目录的templates文件夹,请确保settings.py中的TEMPLATES配置里DIRS包含这个路径:
    TEMPLATES = [
        {
            'BACKEND': 'django.template.backends.django.DjangoTemplates',
            'DIRS': [BASE_DIR / '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',
                ],
            },
        },
    ]
    
  • 如果你的模板放在某个app的templates文件夹(比如your_app/templates/),请确保这个app已经被添加到INSTALLED_APPS中:
    INSTALLED_APPS = [
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        'your_app_name',  # 务必添加你的app名称
    ]
    

2. 确认模板引用的路径格式

即使两个文件在同一文件夹,Django的模板加载逻辑可能需要更明确的路径:

  • 如果你的模板是放在app的templates子目录下(比如your_app/templates/your_app/),那引用时需要加上app的前缀:{% include "your_app/navbar.html" %}
  • 另外注意文件名大小写:Windows系统不区分文件名大小写,但Linux/macOS是严格区分的,如果你的部署环境是Linux,本地开发用Windows,很可能因为大小写不匹配导致找不到模板。

3. 清理Django模板缓存

有时候Django会缓存旧的模板配置,就算你修改了settings.py也不会立即生效。可以运行以下命令清理缓存,然后重启服务器:

python manage.py clearcache

4. 检查文件权限

如果是在Linux/macOS环境下,要确保服务器进程(比如gunicorn或者runserver的进程)有读取navbar.html文件的权限:

  • 文件权限建议设置为644(所有者可读可写,其他用户可读)
  • 目录权限建议设置为755(所有者可读可写可执行,其他用户可读可执行)

按照上面的步骤排查,应该就能解决TemplateDoesNotExist的问题啦!

内容的提问来源于stack exchange,提问作者Tknoobs

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.29 10:22:48