gpt4 book ai didi

python - django - form.cleaned_data[] 用于模型中的所有字段

转载 作者:行者123 更新时间:2023-11-29 10:45:37 26 4
gpt4 key购买 nike

我正在使用 django 来数字化表单。这个表格有点复杂,里面有很多字段。我想知道 Django 是否可以为所有字段执行 form.cleaned_data[] ,而不是为每个字段单独声明诸如 obj.fieldname = form.cleaned_data['fieldname'] 之类的变量。

我在views.py中使用for循环进行了尝试,但这不起作用

这就是我正在谈论的 forloop:

def get_form_naw(request):
if request.method == 'POST':
form = Form1(request.POST)
if form.is_valid():
for x in Model1():
formname = x.name
o = Model1()
o.formname = form.cleaned_data[formname]
o.save()
else:
form = Form1
return render(request, 'folder/home.html', context=locals())

我使用的是 mysql 数据库。我的表格声明如下:forms.py

class Form1(forms.ModelForm):

class Meta:
model = Model1
exclude = ('id')

最佳答案

您不必循环遍历这些字段。您正在使用模型表单,因此您应该只是 save形式:

if form.is_valid():
obj = form.save()
...

如果确实需要动态设置字段,可以使用setattr .

fieldname = 'username'
value = 'my_user'
setattr(obj, fieldname, value)

关于python - django - form.cleaned_data[] 用于模型中的所有字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44630441/

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