假设我有一个看起来像这样的表格:
表格.py
class CreateASomethingForm(ModelForm):
class Meta:
model = Something
fields = ['field2', 'field3', 'field4']
我希望表单具有这三个字段。不过我Something
班也有field1
。field1
我的问题是 -如果我不使用ModelForm
来收集数据,我该如何添加数据。我尝试做这样的事情,但它不起作用,我不确定解决这个问题的正确方法:
视图.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
对象的正确方法是什么?