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

Django项目中/blog/路径模板找不到问题求助

嘿,我来帮你搞定这个模板找不到的问题!

首先,咱们得先搞清楚Django找模板的逻辑:它会按照INSTALLED_APPS里应用的顺序,挨个去每个已安装应用的templates目录下找你要的模板文件。你现在遇到的情况,说明Django压根没去blog应用的模板目录找,反而只在jobs应用里搜,大概率是下面这两个原因之一:

1. blog应用没加到INSTALLED_APPS里

打开项目根目录的settings.py,找到INSTALLED_APPS这个列表,看看里面有没有'blog'这一项。如果没有,赶紧加上,比如:

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'jobs',
    'blog',  # 把这行加上!
]

这一步是关键——只有把应用加入INSTALLED_APPS,Django才会承认它是项目的一部分,才会去它的templates、static等目录里找资源。

2. 模板配置里的APP_DIRS没开

同样在settings.py里找TEMPLATES配置块,确保APP_DIRS设置为True:

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [],
        'APP_DIRS': True,  # 这个必须是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_DIRS=True的作用就是告诉Django:去每个已安装应用的templates目录里找模板。如果这个设成False,哪怕你加了blog到INSTALLED_APPS也没用。

最后验证

把settings.py保存好,重启你的Django开发服务器,再访问/blog/试试。按照你说的模板路径project/blog/templates/blog/allblogs.html是完全符合Django约定的,只要上面两个配置改对,应该就能正常加载模板了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.07 15:08:11