我正在写一个管理命令,它将用建议价格过滤产品的原始价格。如何比较查询中模型的两个字段?
我有一个产品模型,它看起来像:
class Suggestion(models.Model):
....
price = models.IntegerField()
class Product(models.Model):
price = models.IntegerField()
suggestions = models.ManyToManyField(Suggestion)
我要筛选其价格等于minumum建议所有产品。东西应该想:
Product.objects.filter(price = minumum(suggestions))
和
我要过滤其中的建议包含了产品的原价产品。东西应该想:
Product.objects.filter(price__in = self.suggestions)
问题是我不能用一个for循环查找每个产品的minumum建议,因为你想我不能使用对象的自我要么,所以我怎么能比较两个查询中模型的字段?
谢谢!这很好。然而,有一个小错误:建议必须用F('建议')中的引号标出。 –