From 0da6edf5bea23e8972cd4d4443deccf80845c958 Mon Sep 17 00:00:00 2001 From: Ross Date: Wed, 5 May 2021 22:49:43 +0100 Subject: [PATCH] . --- rad/urls.py | 2 +- rapids/views.py | 33 ++++++++++++++++++++++++++++++++- 2 files changed, 33 insertions(+), 2 deletions(-) diff --git a/rad/urls.py b/rad/urls.py index b8f319a3..2ffa4ac4 100644 --- a/rad/urls.py +++ b/rad/urls.py @@ -55,7 +55,7 @@ urlpatterns = [ path("exam/json/unbased", views.active_exams_unbased, name="active_exams_unbased"), path("exam/submit", views.exam_submit, name="global_exam_answers_submit"), #path('', include('generic.urls')), - path("feedback///?", views.AddQuestionNote.as_view(), name="feedback_create"), + path("feedback//", views.AddQuestionNote.as_view(), name="feedback_create"), #path("feedback/", views.AddQuestionNote.as_view(), name="feedback"), diff --git a/rapids/views.py b/rapids/views.py index f955f204..003c4c96 100755 --- a/rapids/views.py +++ b/rapids/views.py @@ -1005,4 +1005,35 @@ class RapidViewSet(RevisionMixin, viewsets.ModelViewSet): class ExamDelete(RevisionMixin, AuthorOrCheckerRequiredMixin, DeleteView): model = Exam - success_url = reverse_lazy("rapids:index") \ No newline at end of file + success_url = reverse_lazy("rapids:index") +class AddSuggestedAnswer(LoginRequiredMixin, CreateView): + model = QuestionNote + form_class = QuestionNoteForm + + #fields = ("author", "note_type", "note") + + + def get_form_kwargs(self): + kwargs = super(AddQuestionNote, self).get_form_kwargs() + # update the kwargs for the form init method with yours + kwargs.update(self.kwargs) # self.kwargs contains all url conf params + return kwargs + + def get_initial(self): + pk = self.kwargs["pk"] + question_type = self.kwargs["question_type"] + if question_type == "rapid": + question = Rapid + content_type = ContentType.objects.get(model="rapid") + elif question_type == "anatomy": + question = AnatomyQuestion + content_type = ContentType.objects.get(model="anatomyquestion") + elif question_type == "long": + question = Long + content_type = ContentType.objects.get(model="long") + else: + raise PermissionError() + + get_object_or_404(question, pk=pk) + return { "content_type" : content_type, + "object_id" : pk } \ No newline at end of file