gpt4 book ai didi

python - Django objects.filter() values_list() vs python list comprehension for __in query

转载 作者:IT老高 更新时间:2023-10-28 22:10:51 24 4
gpt4 key购买 nike

我有一个 Django 查询集过滤的怪癖(?):

ipdb> MagazineIssue.objects.filter(id__in=l_magazines.values_list('id'))
Out[0]: []

ipdb> MagazineIssue.objects.filter(id__in=[l_magazine.id for l_magazine in l_magazines])
Out[0]: [<MagazineIssue: Architecture Australia, Jan 1995 (#1)>]

ipdb> l_magazines.values_list('id')
Out[0]: [(1,)]
ipdb> [l_magazine.id for l_magazine in l_magazines]
Out[0]: [1]

那么,如何使用 values_list()? (生产):

[1]

或者python列表理解是“要走的路”?

最佳答案

试试 l_magazines.values_list('id', flat=True)。这将返回一个 id 列表而不是单个 id 元组的列表。

关于python - Django objects.filter() values_list() vs python list comprehension for __in query,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4812035/

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