首页 > 解决方案 > 如何遍历 django 模板中的查询集?

问题描述

我知道这很可能是重复的,但在类似问题中提供的解决方案没有帮助。

乍一看,这是一个非常简单的问题,它应该无论如何都可以工作,但由于某种原因,它没有。

在 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_liks.all %}
            <div class="col-md-2">
            <a href="{{ link.link }}"><button class="btn btn-info">{{ link.link_name }</button></a>
            </div>
        {% endfor %}
    {% endif %}
{% endif %}

{{ user.quick_links.all }}显示器_

<QuerySet [<UserQuickAccessLink: Link uživatele david@email.eu: Google>, <UserQuickAccessLink: Link uživatele david@email.eu: Coding Music>]>

但是即使 iterable 显然存在,程序也永远不会进入 for 循环。

{% for link in user.quick_liks.all %}
    <div class="col-md-2">
    <a href="{{ link.link }}"><button class="btn btn-info">{{ link.link_name }} </button></a>
    </div>
{% endfor %}

以上永远不会执行。这里的诀窍是什么?

标签: djangodjango-templates

解决方案


如果那是您的实际代码,那么在您的for循环中您有错字;

它应该是

{% for link in user.quick_links.all %}

并不是

{% for link in user.quick_liks.all %}


推荐阅读