【问题标题】:Checking a list of objects against another list of objects根据另一个对象列表检查对象列表
【发布时间】:2011-11-26 16:17:14
【问题描述】:

我有一个用户配置文件,其中包含指向一组收藏对象的多对多字段。

我有一个查询集,它返回一组这些类型的对象,独立于收藏夹(尽管它可能包含收藏夹)。

我想做的是这样的:

{% for object in objects %}
    <p>{% if user.get_profile.favorites contains object %} Unfavorite {% else %} Favorite {% endif %}</p>
{% endfor %}

但到目前为止,我找不到一个简单的方法来做到这一点。想法?

【问题讨论】:

    标签: python django django-templates django-queryset


    【解决方案1】:

    in

    【讨论】:

    【解决方案2】:

    你试过object in user.get_profile.favorites吗?

    无论如何,请在您的视图中进行处理,而不是在您的模板中。

    【讨论】:

    • 我想在模板中这样做的唯一原因是因为我想渲染一批 html 或其他。上面的文字是简化的。
    • 这并不妨碍在您的视图中做出选择,甚至更倾向于在您的模板中做出选择。