反序列化django json数据一次转储一条记录?

反序列化django json数据一次转储一条记录?,django,json,deserialization,Django,Json,Deserialization,我试图读取一个包含json数据的文件,使用loads(data)simplejson方法和extract创建一个表示记录中每列值的字典,而不是使用“标准”或文档化的方式: for obj in serializers.deserialize("json", data): # do something with obj 因为我想避免为每个记录创建django orm对象,所以我只需要一个表示每个对象的字典,这样我就可以使用普通SQL将其插入数据库以提高速度。问题是加载(数据)需要将所有数

我试图读取一个包含json数据的文件,使用loads(data)simplejson方法和extract创建一个表示记录中每列值的字典,而不是使用“标准”或文档化的方式:

for obj in serializers.deserialize("json", data):
    # do something with obj
因为我想避免为每个记录创建django orm对象,所以我只需要一个表示每个对象的字典,这样我就可以使用普通SQL将其插入数据库以提高速度。问题是加载(数据)需要将所有数据读取到内存中,我希望避免这种情况,以保持内存使用率低,并读取json数据中的条目。是否有可能获得一个迭代器,为一条记录生成数据?其次,在反序列化json数据时,我是否可以跳过django orm对象的整个创建过程,而只获取一个值字典

欢迎提供意见和想法


谢谢您的时间。

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

from django.utils import simplejson
my_data = simplejson.loads(data)

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

from django.utils import simplejson
my_data = simplejson.loads(data)

但是,
t是否会将整个json对象加载到内存中?我正在寻找一种方法来避免这种情况。不管怎样,谢谢你的意见:-)为什么这是一个问题?您只是创建了一个字典,与实际创建Django模型实例相比,它的影响相当小。在任何情况下,我都不知道任何迭代反序列化JSON对象的方法。但是,
t是否会将整个JSON对象加载到内存中?我正在寻找一种方法来避免这种情况。不管怎样,谢谢你的意见:-)为什么这是一个问题?您只是创建了一个字典,与实际创建Django模型实例相比,它的影响相当小。在任何情况下,我都不知道任何迭代反序列化JSON对象的方法。