.
This commit is contained in:
+8
-1
@@ -113,8 +113,15 @@ class AnatomyQuestionForm(ModelForm):
|
||||
instance = ModelForm.save(self, False)
|
||||
instance.save()
|
||||
|
||||
for exam in self.cleaned_data["exams"]:
|
||||
old_exams = instance.exams.all()
|
||||
|
||||
new_exams = self.cleaned_data["exams"]
|
||||
|
||||
for exam in old_exams:
|
||||
if exam in new_exams:
|
||||
exam.exam_questions.add(instance)
|
||||
else:
|
||||
exam.exam_questions.remove(instance)
|
||||
|
||||
self.save_m2m()
|
||||
|
||||
|
||||
+9
-9
@@ -855,10 +855,10 @@ class AnatomyQuestionUpdate(RevisionMixin, AuthorOrCheckerRequiredMixin, UpdateV
|
||||
def form_valid(self, form):
|
||||
|
||||
# save exam orders (there must be a better way to do this)
|
||||
exam_orders = {}
|
||||
for exam in self.object.exams.all():
|
||||
exam_orders[exam] = list(exam.exam_questions.all())
|
||||
print(exam_orders[exam])
|
||||
#exam_orders = {}
|
||||
#for exam in self.object.exams.all():
|
||||
# exam_orders[exam] = list(exam.exam_questions.all())
|
||||
# print(exam_orders[exam])
|
||||
|
||||
self.object = form.save(commit=False)
|
||||
self.object.save()
|
||||
@@ -874,11 +874,11 @@ class AnatomyQuestionUpdate(RevisionMixin, AuthorOrCheckerRequiredMixin, UpdateV
|
||||
formset.save()
|
||||
|
||||
# restore exam orders
|
||||
for exam in self.object.exams.all():
|
||||
if exam in exam_orders and self.object in exam_orders[exam]:
|
||||
print(exam_orders[exam])
|
||||
exam.exam_questions.set(exam_orders[exam])
|
||||
exam.save()
|
||||
#for exam in self.object.exams.all():
|
||||
# if exam in exam_orders and self.object in exam_orders[exam]:
|
||||
# print(exam_orders[exam])
|
||||
# exam.exam_questions.set(exam_orders[exam])
|
||||
# exam.save()
|
||||
|
||||
return response
|
||||
else:
|
||||
|
||||
+3
-3
@@ -349,9 +349,9 @@ class RapidUpdate(
|
||||
|
||||
def form_valid(self, form):
|
||||
# save exam orders (there must be a better way to do this)
|
||||
exam_orders = {}
|
||||
for exam in self.object.exams.all():
|
||||
exam_orders[exam] = list(exam.exam_questions.all())
|
||||
#exam_orders = {}
|
||||
#for exam in self.object.exams.all():
|
||||
# exam_orders[exam] = list(exam.exam_questions.all())
|
||||
|
||||
self.object = form.save(commit=False)
|
||||
self.object.save()
|
||||
|
||||
Reference in New Issue
Block a user