Django模型将字段与字段进行比较[重复]

Posted

技术标签:

【中文标题】Django模型将字段与字段进行比较[重复]【英文标题】:Django models compare field to field [duplicate] 【发布时间】:2019-06-30 03:58:23 【问题描述】:

假设我们有模型

class MyModel(models.Model):
    int_field_one = models.IntegerField(default=0)
    int_field_two = models.IntegerField(default=0)

问题是: Django 模型是否支持通过另一个字段过滤一个字段? 换句话说,我想执行以下查询

SELECT * FROM MyModel WHERE int_field_one > int_field_two

带有过滤语法MyModel.objects.filter(int_field_one=int_field_two)

【问题讨论】:

【参考方案1】:

您需要F expressions 和__gt lookup:

MyModel.objects.filter(int_field_one__gt=F('int_field_two'))

【讨论】:

是的,它有效。谢谢!

以上是关于Django模型将字段与字段进行比较[重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何将csv日期时间字符串保存到Django模型字段中[重复]

如何将字段添加到现有模型[重复]

python django仅显示对象/模型中出现一次的字段[重复]

将值与mysql中表的所有字段进行比较[重复]

将值与mysql中表的所有字段进行比较[重复]

删除 Django ORM 中的重复项——多行