为了账号安全,请及时绑定邮箱和手机立即绑定

使用 json 创建模型对象,其中所有键都不是模型的字段

使用 json 创建模型对象,其中所有键都不是模型的字段

Smart猫小萌 2021-08-14 21:38:14
我有一个模型如下:class Person(models.Model):    name = model.CharField(max_length = 255)    mobile = model.IntegerField(null = True)    city = model.CharField(max_length = 255)现在我需要使用 json 创建一个模型对象,如下所示:data = { "name" : "John",         "age" : 31,         "city" : "New York",         "mobile" : 1234432156,        "address" : "xyz" }在上面的 json 中name,, mobile,city是Person模型中的字段。我必须使用上面的 json 创建一个模型对象。我这样做了:Person.objects.create(**data)但它抛出一个错误说'age' is invalid keyword argument for this function。我的理解是,由于模型中没有年龄字段,因此会引发错误。如何使用这样的 json 创建模型实例,其中所有键都不是模型中的字段。
查看完整描述

1 回答

?
慕森卡

TA贡献1806条经验 获得超8个赞

除非您知道您的数据与您的模型具有相同的“形状”(即具有相同的字段),否则最好将其明确地写出来:

Person.objects.create(name=data['name'], mobile=data['mobile'], city=data['city'])


查看完整回答
反对 回复 2021-08-14
  • 1 回答
  • 0 关注
  • 147 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号