From 7e4b5f52750e026116792b64674b06b4c5b6bf0c Mon Sep 17 00:00:00 2001 From: Ross Date: Mon, 10 Jan 2022 20:42:06 +0000 Subject: [PATCH] . --- generic/forms.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/generic/forms.py b/generic/forms.py index 15ccbbef..0fd89d8d 100755 --- a/generic/forms.py +++ b/generic/forms.py @@ -110,6 +110,29 @@ class CidUserForm(ModelForm): queryset=PhysicsExam.objects.filter(archive=False), widget=FilteredSelectMultiple(verbose_name="Physics Exams", is_stacked=False), ) + + def save(self, commit=True): + # Get the unsaved Long instance + instance = ModelForm.save(self, False) + + # Prepare a 'save_m2m' method for the form, + old_save_m2m = self.save_m2m + + def save_m2m(): + old_save_m2m() + instance.physics_exam.clear() + for case in self.cleaned_data["physics_exam"]: + # We need the id here + instance.physics_exam.add(physics_exam.pk) + + self.save_m2m = save_m2m + + # Do we need to save all changes now? + # if commit: + instance.save() + self.save_m2m() + + return instance class Meta: model = CidUser