Python Flask模板语法错误求助:TemplateSyntaxError问题排查
解决Jinja2 TemplateSyntaxError: Encountered unknown tag 'endblock'错误
你的问题出在模板里的for循环结束标签格式错误,导致Jinja2无法正确解析循环闭合指令,进而触发嵌套错误。
看这段代码:
{ % endfor %}
这里{和%之间多了一个空格,Jinja2要求模板标签的{%必须是连续字符,不能有空格。这个错误导致解析器无法识别这是endfor闭合标签,因此它会一直认为for循环还没结束,当后续遇到endblock时,就会抛出"期望找到endfor或else,却遇到unknown tag 'endblock'"的错误。
修复方法很简单,把这行的空格去掉,改成标准的闭合标签:
{% endfor %}
修改后,模板解析器就能正确识别endfor,完成for循环的闭合,后续的endblock也能正常匹配对应的block块,这个语法错误就会解决。
内容的提问来源于stack exchange,提问作者hit701
相关产品推荐
相关产品推荐

