我有2个模特
class ShipmentBagSealMapping(models.Model):
bag_seal = models.CharField(max_length = 255)
status = models.CharField(max_length = 255, default = 'open')
time = models.DateTimeField( auto_now_add = True, db_index = True)
shipment_id = models.ForeignKey('Shipment', related_name = 'bags')
class Shipment(models.Model):
job_id = models.CharField(max_length = 255)
time = models.DateTimeField( auto_now_add = True, db_index = True)
我想编写一个JOIN查询,该查询告诉我ShipmentBagSealMapping
with中的记录数status = close
和of的时间Shipment
在range内[start_time and end_time]
。
这是我尝试过的:
total_bags = ShipmentBagSealMapping.objects.filter(shipments__time__range = [start_time,end_time],status='close').values('bag_seal').distinct().count()
但是它抛出一个错误,说:-
Cannot resolve keyword 'shipments' into field. Choices are: bag_seal, id, shipment_id, status, time
我该怎么做?
这应该做到这一点:
total_bags = ShipmentBagSealMapping.objects.filter(shipment_id__time__range = [start_time,end_time],status='close').values('bag_seal').distinct().count()
看到已定义的字段为shipment_id
不shipments
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句