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

Django模板{% if %}判断相等报TemplateSyntaxError排查与解决

报错根因

Django模板引擎解析标签语法时,要求所有比较运算符(==/!=/>=/<=等)两侧必须保留空格,不能和前后的变量名直接连写。报错代码中request.user.id==comm.user.id将变量与相等运算符==直接连写,引擎无法识别拼接后的语法片段,因此抛出Could not parse the remainder类解析错误。

修复方案

定位到模板文件C:\Users\SHAFQUET NAGHMI\socialnetwork\socialapp\templates\socialapp\comment.html第27行的if判断,给==运算符两侧加上空格即可。修正后的对应代码段如下:

{% for comm in comments %}

<a class="comment-user" href="{% url 'profile' comm.user.username %}">{{comm.user}}</a>
{{comm.comment}}
{% if request.user.id == comm.user.id %} 
<a class="delete" href="/delete_comment/{{post.id}}/{{comm.id}}/">Delete</a>
{% endif %}
<br><br>
{% endfor %}
语法提示

所有Django模板标签内的独立语法元素之间都需要用空格分隔:比较运算、过滤器传参、url标签传参、模板标签参数都不要和相邻语法元素连写,否则都可能触发同类解析错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 17:01:40