Python 上存在多个筛选器

Python 上存在多个筛选器,python,django,rest,Python,Django,Rest,我正在尝试筛选我的exists查询集,查看3个字段,以检查此游戏、平台和地区的发布日期是否已经存在 我所追求的目标是: if ReleaseDate.objects.filter(game=game.id).filter(platform=release_date_object['platform']).filter(region=release_date_object['region']).exists(): 非常简单-只需将它们放在一个带逗号的过滤器中: if ReleaseDate.ob

我正在尝试筛选我的exists查询集,查看3个字段,以检查此游戏、平台和地区的发布日期是否已经存在

我所追求的目标是:

if ReleaseDate.objects.filter(game=game.id).filter(platform=release_date_object['platform']).filter(region=release_date_object['region']).exists():

非常简单-只需将它们放在一个带逗号的过滤器中:

if ReleaseDate.objects.filter(game=game.id, platform=release_date_object['platform'], region=release_date_object['region']).exists():

有时更复杂的查询需要Q对象,但对于简单的多字段查询,只需将它们全部放在一个筛选器中即可。

您可以使用:

这将确保筛选器中的每个参数都为true

if ReleaseDate.objects.filter(Q(game=game.id) & Q(platform=release_date_object['platform']) & Q(region=release_date_object['region'])).exists()