Json到django模型。Python数据类型错误
我得到了在django模型中转换json数据的时间。 我怎样才能解决它Json到django模型。Python数据类型错误,python,json,django,Python,Json,Django,我得到了在django模型中转换json数据的时间。 我怎样才能解决它 class Persons(models.Model): rank = models.IntegerField() employer = models.CharField(max_length=100) employeesCount = models.IntegerField() medianSalary = models.IntegerField() 对象创建者: for json in json_string: Per
class Persons(models.Model):
rank = models.IntegerField()
employer = models.CharField(max_length=100)
employeesCount = models.IntegerField()
medianSalary = models.IntegerField()
对象创建者:
for json in json_string:
Persons.objects.create(id=json['rank'], employer=json['employer'], employeesCount=json['employeesCount'], medianSalary=json['medianSalary'])
json阅读器
f = open('data.json')
json_string = f.read()
f.close()
json文件:
[
{
“排名”:1,
“雇主”:“沃尔玛”,
“雇员搜索”:2300000,
“中庸”:19177
},
{
“排名”:2,
“雇主”:“亚马逊”,
“雇员搜索”:566000,
“媒体报警”:38466
}
]您的代码需要一个字典。使用内置库转换json字符串
import json
your_json = json.loads(f.read())
Th
json_strings
只是一个字符串,而不是字典列表。您可以使用JSON对其进行反序列化:
from json import load as json_load
with open('data.json') as f:
json_data = json_load(f)
Persons.objects.bulk_create([
Person(
id=record['rank'],
employer=record['employer'],
employeesCount=record['employeesCount'],
medianSalary=record['medianSalary']
)
for record in json_data
])
从json导入加载为json\u加载
将open('data.json')作为f:
json_数据=json_加载(f)
Persons.objects.bulk\u创建([
人(
id=记录['rank'],
雇主=记录[“雇主”],
EmployeeScont=记录['EmployeeScont'],
medianSalary=记录['medianSalary']
)
用于json_数据中的记录
])
通过使用bulk\u create
在数据库中批量创建对象,从而减少到数据库的往返次数