Django模板{% with %}标签未闭合引发语法错误求助
Django模板报错:
Invalid block tag on line ...: 'endblock', expected 'endwith' 问题代码
{% extends "base.html" %} {% load django_bootstrap5 %} {% block content %} <form method="post"> {% csrf_token %} {% bootstrap_form form %} {% bootstrap_button button_type="submit" content="Отправить" %} </form> {% with data=request.POST %} {% endblock %}
错误原因
你只使用了{% with %}标签的起始标记,没有添加对应的{% endwith %}闭合标记。Django模板的块级标签(如with、block)必须成对出现,模板解析器在解析到{% endblock %}时,仍认为处于with块的范围内,因此抛出"预期endwith"的错误。
修复方案
给{% with %}标签补上{% endwith %}闭合标记,确保块结构完整。即使暂时不需要在with块内编写代码,也必须保留闭合标记:
{% extends "base.html" %} {% load django_bootstrap5 %} {% block content %} <form method="post"> {% csrf_token %} {% bootstrap_form form %} {% bootstrap_button button_type="submit" content="Отправить" %} </form> {% with data=request.POST %} {# 后续可在此添加使用data变量的代码 #} {% endwith %} {% endblock %}
添加{% endwith %}后,模板解析器能正确识别块的边界,错误会自动消失,同时满足保留{% with %}代码的要求。
内容的提问来源于stack exchange,提问作者Exe_cutor77
相关产品推荐
相关产品推荐

