【发布时间】:2019-04-14 15:05:46
【问题描述】:
我有一个模型如下:
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 创建模型实例,其中所有键都不是模型中的字段。
【问题讨论】:
-
但是您期望年龄值会发生什么?你为什么要把它包括在内?
-
感谢您的回复。这是代表我的问题的示例问题。该json不是由任何人创建的,它是从数据库查询中生成的。相比之下,
age可能不会在这里使用,但可以在其他地方使用。 -
这不是 JSON,这是 Python 字典。
标签: python django database django-models django-orm