Django使用extends继承模板后子模板homepage.html内容无法加载
核心问题
你的视图函数当前直接渲染了父模板index.html,而父模板中预留的{% block content %}本身没有内容,你写在子模板homepage.html里的内容自然不会被加载。
修复步骤
- 修改
views.py中的homepage视图,将渲染对象改为子模板homepage.html:
from django.shortcuts import render def homepage(request): # 原代码渲染的是父模板index.html,替换为子模板即可 return render(request, 'homepage.html')
- 如果修改后仍不生效,检查项目
settings.py中的模板目录配置,确认TEMPLATES配置项的DIRS列表包含了templates目录的路径,示例配置如下:
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', ], }, }, ]
内容的提问来源于stack exchange,提问作者Jigme
相关产品推荐
相关产品推荐

