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

时间:2011-02-23 22:58:36

标签: django json deserialization

我试图用json-data读取文件,使用loads(data)simplejson方法并解压缩创建一个字典来表示记录中每列的值,而不是使用“标准”或记录的方式:

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

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

欢迎投入和想法。

感谢您的时间。

1 个答案:

答案 0 :(得分:1)

如果您不想创建ORM对象,则使用Django反序列化方法毫无意义。只需使用基础simplejson库加载JSON:

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