Django模板报错line 8: 'empty' 未注册或加载标签如何解决?
报错触发原因
- Django模板语法要求标签的闭合标记
%}不能有拆分空格,提供的代码中for循环起始标签写为{% for task in tasks % },%与}之间多了一个空格,导致模板引擎无法正确识别这是for循环的起始标签,后续的{% empty %}没有被判定为for循环的内置子句,而是被当成了未注册的自定义标签,因此触发报错。
修复方案
- 删掉for标签末尾
%和}之间的多余空格,将{% for task in tasks % }修改为{% for task in tasks %}即可,修改后完整的模板代码如下:
<h1>My To do list </h1> <table> <tr> <th>Items</th> </tr> {% for task in tasks %} <tr> <td>{{task.title}}</td> </tr> {% empty %} <h3>No items in list</h3> {% endfor %} </table>
内容的提问来源于stack exchange,提问作者Arabindra Dhami
相关产品推荐
相关产品推荐

