1

我正在尝试使用 json-data 读取文件,使用 load(data) simplejson 方法并提取创建一个表示记录中每一列的值的字典,而不是使用“标准”或记录的方式:

for obj in serializers.deserialize("json", data):
    # do something with obj

因为我想避免为每条记录创建 django orm 对象,所以我只想要一个代表每个对象的字典,这样我就可以使用纯 SQL 将其插入数据库以获得速度。问题是负载(数据)需要将所有数据读入内存,我想避免这种情况以保持低内存使用率并读取 json-data 中的条目。是否有可能获得一个为一条记录产生数据的迭代器?其次,我可以在反序列化 json 数据时跳过 django orm 对象的整个创建过程,而只获取值的字典吗?

欢迎输入和想法。

谢谢你的时间。

4

1 回答 1

1

如果您不想创建 ORM 对象,那么使用 Django 反序列化方法是没有意义的。只需使用底层simplejson库加载 JSON:

from django.utils import simplejson
my_data = simplejson.loads(data)
于 2011-02-24T08:31:43.090 回答