question update
[edumed.git] / wtem / forms.py
index 61e1d7c..c0da211 100644 (file)
@@ -22,11 +22,16 @@ class WTEMForm(forms.ModelForm):
         for exercise in exercises:
             if exercise['type'] != 'file_upload':
                 continue
         for exercise in exercises:
             if exercise['type'] != 'file_upload':
                 continue
-            self.fields['attachment_' + exercise['name']] = forms.FileField(required = False)
+            self.fields['attachment_for_' + str(exercise['id'])] = forms.FileField(required = False)
 
     def save(self):
         submission = super(WTEMForm, self).save()
 
     def save(self):
         submission = super(WTEMForm, self).save()
-        for file in self.files.values():
-            attachment = Attachment(file = file, submission = submission)
+        for name, file in self.files.items():
+            exercise_id = int(name.split('_')[-1])
+            try:
+                attachment = Attachment.objects.get(submission = submission, exercise_id = exercise_id)
+            except Attachment.DoesNotExist:
+                attachment = Attachment(fsubmission = submission, exercise_id = exercise_id)
+            attachment.file = file
             attachment.save()
 
             attachment.save()