Django 查询集过滤,将字段与字段进行比较

Posted

技术标签:

【中文标题】Django 查询集过滤,将字段与字段进行比较【英文标题】:Django queryset filtering, comparing fields with fields 【发布时间】:2022-01-16 19:48:19 【问题描述】:

我想过滤本国与居住国相同的查询集。我尝试做这样的事情:

users = User.objects.filter(homecountry=residentcountry)

我怎样才能做到这一点?

【问题讨论】:

这能回答你的问题吗? How to create a Django queryset filter comparing two date fields in the same model 【参考方案1】:

考虑到homecountryresidentcountry 是表中的两个字段。 F expression 可以用于此。请检查文档...

from django.db.models import F

users = User.objects.filter(homecountry=F('residentcountry'))

【讨论】:

以上是关于Django 查询集过滤,将字段与字段进行比较的主要内容,如果未能解决你的问题,请参考以下文章

如何按非字段值过滤 Django 查询集

Django 查询集过滤具有相同多对多字段的对象

如果字段存在,Django过滤查询集

Django如何过滤多对多字段中的对象,而不是原始查询集

根据 Django 国家/地区字段过滤查询集

Django 查询集过滤器文件字段不为空