1

在以下模型中:

class Product(models.Model):
    name = models.CharField(max_length = 255)
    created_in = models.DateTimeField(auto_now=True)

class Price(models.Model):
    product = models.ForeignKey(Product)
    price = models.DecimalField(max_digits=6, decimal_places=2)
    created_in = models.DateTimeField(auto_now=True)

我想做这样的事情:

products = Product.objects.filter(price__gte=Decimal(10)) #它考虑了所有价格我只需要最后一个

我如何查询仅考虑“created_in”相关的最后价格的产品?

谢谢!!

4

1 回答 1

1

latest()是您需要的:

使用作为日期字段提供的 field_name 按日期返回表中的最新对象。

products = Product.objects.filter(price__gte=Decimal(10)).latest('price__created_in')
于 2013-09-12T18:46:31.570 回答