我有以下查询集:
max_latitude = Model.objects.aggregate(Max('latitude'))
当我打印它时,它返回
{'latitude__max': 51.6639002}
而不是51.6639002
。
当我想将纬度加在一起以计算平均纬度时,这会导致问题。
如果我这样做
print(max_latitude.latitude)
(模型对象的字段)我得到以下内容:error:'dict' object has no attribute 'latitude'
如何提取查询集中给定的实际数字?
用
指向具体的字段名max_latitude = Model.objects.aggregate(Max('latitude'))['latitude__max']
您还可以根据需要命名您的字段:
max_latitude = Model.objects.aggregate(latitude=Max('latitude'))
既然是字典,就用
max_latitude['latitude__max']