To update an object from edit form in Python Django, we can call save in our view.
For instance, we write
class MyForm(forms.ModelForm):
class Meta:
model = MyModel
in forms.py to create a form.
And then in views.py, we write
def my_view(request, id):
instance = get_object_or_404(MyModel, id=id)
form = MyForm(request.POST or None, instance=instance)
if form.is_valid():
form.save()
return redirect('next_view')
return render(request, 'my_template.html', {'form': form})
to create the MyForm instance with request.POST and the MyModel object we want to by the id.
And we call form.save to save the form is the form‘s values are valid as returned by is_valid.
Otherwise, we render the form in the template.