gpt4 book ai didi

django - 保存前向 ModelForm 对象添加数据

转载 作者:行者123 更新时间:2023-11-28 19:37:30 26 4
gpt4 key购买 nike

假设我有一个如下所示的表单:

表单.py

class CreateASomethingForm(ModelForm):
class Meta:
model = Something
fields = ['field2', 'field3', 'field4']

我希望表单具有这三个字段。但是我的 Something 类也有 field1。我的问题是 - 如果我不使用 ModelForm 来收集数据,我该如何将数据添加到 field1。我试过做这样的事情,但它不起作用,我不确定解决这个问题的正确方法:

views.py

def create_something_view(request):
if (request.method == 'POST'):
# Create an object of the form based on POST data
obj = CreateASomething(request.POST)
# ** Add data into the blank field1 ** (Throwing an error)
obj['field1'] = request.user
# ... validate, save, then redirect

我收到的错误是:

TypeError: 'CreateAClassForm' object does not support item assignment

在 Django 中,在保存之前将数据分配给 ModelForm 对象的正确方法是什么?

最佳答案

form = CreateASomething(request.POST)
if form.is_valid():
obj = form.save(commit=False)
obj.field1 = request.user
obj.save()

关于django - 保存前向 ModelForm 对象添加数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17126983/

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