gpt4 book ai didi

python - 如何使用表达式作为关键字在django中保存

转载 作者:太空宇宙 更新时间:2023-11-04 05:13:57 25 4
gpt4 key购买 nike

我想通过迭代对象数组在模型/表的单个列中创建一个条目。对象数组是这样的:

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 循环中。

关于python - 如何使用表达式作为关键字在django中保存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42251732/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com