[Django]-Django: using ModelForm to edit existing database entry

59👍

✅

Remember you still need to use the instance parameter when you instantiate on POST.

instance = MyModel.objects.get(whatever)
if request.method == "POST":
    form = MyModelForm(request.POST, instance=instance)
    ...

else:
    form = MyModelForm(instance=instance)

3👍

Also possible and slightly shorter:

instance = MyModel.objects.get(whatever)
form = MyModelForm(request.POST or None, instance=instance)
...

Leave a comment