gpt4 book ai didi

python - 检查 QuerySet 中是否存在对象

转载 作者:太空宇宙 更新时间:2023-11-04 01:35:19 25 4
gpt4 key购买 nike

所以我有一个用户模型和一个晚餐模型。它们由 LotteryEntry 模型关联。 (又名人们必须参加彩票才能被选中去参加晚宴)

假设我有一组这样的晚餐查询:

first_page_dinners = Dinner.objects.all().order_by('-created_at')[:5]

以及当前登录用户的“乐透”QuerySet

entries = LotteryEntry.objects.filter(user=request.user)

现在在模板中,我正在遍历 Dinner 对象,但也想检查此人是否已经为该晚餐输入了彩票......所以像这样:

{% for d in dinners %}
{% if entries.contains(d) %}
//custom html here if user has already entered lottery
{% endif %}
{% endfor %}

然而,“.contains”并不是真实存在的。 django/python 是否提供了这样一个不错的小方法?

最佳答案

尝试使用 values_list , 因此检查对象是否存在会更容易:

dinner_entries = LotteryEntry.objects.filter(user=request.user).values_list('dinner__id', flat=True)

在您的模板中,您可以这样检查:

{% if d.id in dinner_entries %}

关于python - 检查 QuerySet 中是否存在对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10507612/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com