我正在尝试两种方法将查询集的字段attribute_value
序列化为JSON,而最快的不是我想要的那种方法。该字段是已为JSON格式化的HSTORE field
例如:
print feature.attribute_value
>>>{"NOM": "Saguenay - Lac-Saint-Jean", "CODE": "45", "id": "0", "integer": "5"}
第一种方法:
features_selected = Feature.objects.filter(shapefile__pk=shapefile_id).order_by("id")
data = [feature.attribute_value for feature in features_selected]
jsonData= json.dumps(data)
第二种方法:
features_selected = Feature.objects.filter(shapefile__pk=shapefile_id).order_by("id").values_list("attribute_value", flat=True)
jsonData= json.dumps(list(features_selected))
我认为第二种方法会更快,因为只查询字段“attribute_value”而不是第一种方法中的所有(*)其他字段,但第一种方法更快一些。我想知道为什么,以及是否有更好的方法来序列化查询集。
凸块!