Django模板中遍历QuerySet失败问题排查:已获取QuerySet但无法进入for循环
问题出在拼写错误!
你仔细看一下for循环里的变量名:user.quick_liks.all,这里把quick_links写成了quick_liks——少了一个字母n!
虽然{{ user.quick_links.all }}能正确输出QuerySet,但循环里的拼写错误导致Django找不到对应的属性,自然不会进入循环执行内容。
修正后的代码应该是这样的:
{% if user.is_authenticated %} {% if user.quick_links.all %} {{ user.quick_links.all }} <h2>Moje rychlé přístupy:</h2> {% for link in user.quick_links.all %} <div class="col-md-2"> <a href="{{ link.link }}"><button class="btn btn-info">{{ link.link_name }}</button></a> </div> {% endfor %} {% endif %} {% endif %}
只要把循环里的quick_liks改成quick_links,问题就解决啦,这种拼写小错误很容易忽略,下次写代码的时候多留意一下变量名的一致性就好~
内容的提问来源于stack exchange,提问作者David Louda
相关产品推荐
相关产品推荐

