我已经在此问题上停留了三天,非常感谢任何建议或帮助。
我已经使用modelformset_factory创建了一个表单集,并将数据成功保存到数据库中。我还使用queryset成功加载了数据。现在我想修改数据,但它总是命中一个formset无效错误“ id is required”。我不知道哪里出了问题,我阅读了文档,但找不到任何帮助。
这是我的表格:
FocusFormset = modelformset_factory(
startupFocus,
fields=('name',),
widgets={
'name': forms.TextInput(
attrs={
'placeholder': 'Enter Area of Focus here',
'label': 'Area of Interests',
}
)
}
)
这是我的观点:
if request.method == 'POST':
edit_form_io = update_startup_info_form(request.POST, instance=current_user)
formset = FocusFormset(request.POST)
if edit_form_io.is_valid() and formset.is_valid():
# print(formset)
edit_form_io.save()
instances = formset.save(commit=False)
for instance in instances:
instance.myUser = current_user
instance.name = instance["name"]
instance.save()
return redirect('../display-profile')
这是我的模特:
class startupFocus(models.Model):
name = models.CharField(max_length=255, verbose_name='Area of Interests:')
myUser = models.ForeignKey(
MyUser,
on_delete=models.SET_NULL,
null=True
)
def __str__(self):
return self.name
这是我的模板,如下所示: template