Django - 从JSON文件填充数据库表

时间:2015-02-24 22:28:12

标签: python sql json django sqlite

我正在开发一个Django应用程序并在我的db(SQLite3)中创建了一些初始表。我在一个文件中有JSON对象(每行一个JSON对象),其属性与表中的字段一对一映射,我想知道Django中是否有一些内置机制将这些插入到表中,或者我是自己编写SQL吗?

目前我唯一的参考是

https://docs.djangoproject.com/en/1.7/howto/initial-data/

建议在app目录中名为<modelname>.sql的文件夹中创建一个sql文件,其中包含INSERT个条目语句。但似乎没有办法从JSON对象创建那些INSERT语句。编写脚本非常简单,但我想知道是否已有一个脚本?

另外,在我的应用程序中,我只有一个表,而且我没有任何外键关系。当我运行python manage.py makemigrations <app>时,它没有为表中的主键字段创建任何索引。这是我必须自己做的事情吗?

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

我假设该表与models.py文件中的某些数据模型相关联(如果没有,则需要显式编写INSERT语句)。一旦将表与数据模型链接起来(使用python manage.py syncdb),只需使用json.loads()函数(import json)将数据从JSON加载到模型的实例中。然后使用&#39; instance_you_created.save()&#39;保存。方法。这应该可以解决。