【发布时间】:2017-03-02 21:50:34
【问题描述】:
当我有一个具有属性salary(salary = models.PositiveIntegerField()) 和boss(boss = models.ForeignKey('employe', null=True)) 的班级雇员时。 如何使用 django 查询集找到薪水高于老板薪水的员工?
【问题讨论】:
当我有一个具有属性salary(salary = models.PositiveIntegerField()) 和boss(boss = models.ForeignKey('employe', null=True)) 的班级雇员时。 如何使用 django 查询集找到薪水高于老板薪水的员工?
【问题讨论】:
您需要使用annotate 来获取老板的薪水,然后将字段与以下内容进行比较:
from django.db.models import F
Employee.objects.annotate(boss_salary=F("boss__salary"))\
.filter(salary__gt=F("boss_salary"))
【讨论】: