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

Django中blockcontent与endblock内容未显示在指定位置问题

Django模板block内容位置错误的解决方法

问题根源

你搞混了{% include %}和{% extends %}的用法:

  • {% include %}只是把目标模板的代码原封不动插进来,它不会识别父模板里的block标签,你写的{% block content %}会直接加到base.html代码的最后,所以跑到了页脚下面。
  • {% extends %}是Django的模板继承机制,它会精准替换父模板中对应block的内容,这就是webapp应用里用它能正常显示的原因。

快速修复

把patients应用的模板开头代码改了就行:

  1. 删掉{% include 'webapp/base.html' %},换成:
{% extends 'webapp/base.html' %}
  1. 保留你原来写在{% block content %}和{% endblock %}里的内容,这样Django就会把这段内容自动填充到base.html中导航栏和页脚之间的对应block位置。

可选方案(如果不需要完整继承)

要是你不想用继承,只想插入导航和页脚,那可以把base.html拆成小片段:

  • 把导航栏单独存成webapp/nav.html
  • 把页脚单独存成webapp/footer.html
  • 然后在patients的模板里这么写:
{% include 'webapp/nav.html' %}
<!-- 这里直接写你的页面内容,不用套block -->
{% include 'webapp/footer.html' %}

但这种方式适合简单场景,复用完整页面结构的话,还是用extends更规范。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 11:57:09