我用错了吗?:
qs = self.model.objects.exclude(invoice__sale_date__lt=date, id=instance.id)
这将返回在指定日期之前具有invoice.sale_date的项目。
这是我的输入:
print(date)
print("---")
qs = self.model.objects.exclude(invoice__sale_date__lt=date, id=instance.id)
for q in qs:
print(q.invoice.sale_date)和输出:
2015-05-01
---
2015-04-01
2015-05-01如果我删除id=instance.id部分,日期较早的对象将被正确排除。本例中的instance是一个对象,它的invoice.sale_date定义了本例中的date值,我也希望将其排除在外。根据the docs的说法,这似乎就是它应该如何工作的,但也许我读错了?
发布于 2016-08-03 02:49:53
您正在执行的查询表示和。这意味着它将排除小于sales_date且id等于instance.id的日期。
如果我理解正确的话,你可以这样做:
qs = self.model.objects.exclude(invoice__sale_date__lt=date).exclude(id=instance.id)https://stackoverflow.com/questions/38728210
复制相似问题