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

Templates不存在:如何指定base_site.html路径供博客视图正常访问

base_site.html路径配置解决方案

1. 确认模板存放目录结构

优先把模板文件放在项目根目录的templates文件夹下,如果你是要覆写Django admin的默认base_site.html,需要额外嵌套一层admin目录,最终路径结构如下:

项目根目录/
├── 项目同名配置文件夹/
├── templates/
│   └── admin/  # 仅覆写admin模板时需要该层目录,自定义博客模板可省略
│       └── base_site.html
└── manage.py

如果是博客自定义视图调用的公共模板,直接把base_site.html放在templates根目录即可。

2. 配置settings.py模板搜索路径

打开项目同名配置文件夹下的settings.py,找到TEMPLATES配置项,确保DIRS字段已指定根目录的templates路径,配置示例:

import os
TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(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',
            ],
        },
    },
]

Django 3.1及以上版本可以直接简写为'DIRS': [BASE_DIR / 'templates'],无需导入os模块。

3. 视图内正确指定模板路径

调用模板时路径要和实际存放位置匹配:

  • 模板放在templates/admin下时,调用路径写'admin/base_site.html'
  • 模板放在templates根目录下时,调用路径写'base_site.html'

视图调用示例:

from django.shortcuts import render

def blog_view(request):
    return render(request, 'base_site.html', context={})

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 02:15:03