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

遇到Django模板'endblock'语法错误,该如何解决?

Django模板继承报错:无效块标签'endblock'

我尝试在index.html中继承base.html文件,但一直出现以下错误:第2行无效块标签'endblock',是否忘记注册或加载该标签?

base.html代码

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>{% block title %}{% endblock %}</title>
        <!-- {% block css_files %} {% endblock %} -->
    </head>
    <body>
        {% block content %}{% endblock %}
    </body>
</html>

index.html代码

{% extends 'base.html' %} {% block title %} My Blog {% endblock %} {% block
content %} Hello {% endblock %}

我已确认花括号与%之间无空格,问题可能出在哪里?


排查方向:

  • 确认模板引擎配置:检查项目settings.py的TEMPLATES配置,确保BACKEND设置为'django.template.backends.django.DjangoTemplates',避免使用不兼容的模板引擎导致标签解析失败。
  • 验证模板路径配置:确保base.html所在的目录被添加到TEMPLATES的DIRS列表中,或者放在对应app的templates文件夹下(需确保该app已添加到INSTALLED_APPS),否则Django无法找到父模板,会导致继承逻辑异常。
  • 调整模板标签格式:将index.html中的每个模板标签单独换行,避免标签连写可能引发的解析问题:
    {% extends 'base.html' %}
    {% block title %} My Blog {% endblock %}
    {% block content %} Hello {% endblock %}
    
  • 排查特殊字符:复制粘贴可能引入不可见的特殊字符,建议手动重新输入模板标签部分,或用编辑器开启显示隐藏字符功能排查异常字符。
  • 检查自定义标签库:如果项目中使用了自定义模板标签,确认是否在模板顶部正确加载(如{% load my_tags %}),不过你的代码中未使用自定义标签,此点可作为备选排查项。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 16:22:16