我想通过迭代对象数组在模型/表的单个列中创建一个条目。对象数组是这样的:
arr = [
{ "field_name" : "email", "field_value" : "abc@abc.com" },
{ "field_name" : "name", "field_value" : "Abc Xyz" },
{ "field_name" : "gender", "field_value" : "M" }
]
我希望数据这样保存:
| **email** | **name** | **gender** |
| abc@abc.com | Abc Xyz | M |
假设我有一个名为“model_name”的模型,那么我编写的代码是这样的:
modelObject = model_name()
for data in arr:
modelObject( data['field_name'] = data['field_value'] )
modelObject.save()
我想一次保存这些数据,因为数据对应于单个列。但是我写的代码在行给出了“关键字不能是表达式”错误:
modelObject( data['field_name'] = data['field_value'] )
有人可以帮我想办法解决这个问题吗?
请您参考如下方法:
您可以将数据放入字典中,然后使用解包将它们传递给模型类:
for data in arr:
obj = modelObject(**{data['field_name']: data['field_value']})
obj.save()
请记住添加对新创建对象的引用,并使用该引用将每个对象保存在 for 循环中。
