From 4cfb7d6f7d7a15608ead947fafc047d34325be81 Mon Sep 17 00:00:00 2001 From: Ross Date: Wed, 7 Jul 2021 16:07:24 +0100 Subject: [PATCH] . --- rapids/models.py | 31 +++++++++++++++---- .../rapids/question_display_block.html | 16 ++++++++-- 2 files changed, 39 insertions(+), 8 deletions(-) diff --git a/rapids/models.py b/rapids/models.py index 05ce8014..0eeeb10c 100644 --- a/rapids/models.py +++ b/rapids/models.py @@ -37,6 +37,10 @@ def image_directory_path(instance, filename): return u"rapids/picture/{0}".format(filename) +def get_answer_compare(string): + s = string.strip().lower() + s = s.translate(str.maketrans('', '', string.punctuation.replace("#", ""))) + return s class Abnormality(models.Model): name = models.CharField(max_length=200, @@ -101,12 +105,7 @@ class Answer(models.Model): def clean(self): if self.answer: - self.answer = self.answer.strip() - - s = self.answer.lower() - s = s.translate(str.maketrans('', '', string.punctuation.replace("#", ""))) - - self.answer_compare = s + self.answer_compare = get_answer_compare(self.answer) @reversion.register @@ -255,6 +254,14 @@ class Rapid(models.Model): def get_unmarked_answer_count(self): return len(self.get_unmarked_answers()) + def get_compare_answers(self): + return set( + [ + i.answer_compare + for i in self.answers.filter() + ] + ) + def get_marked_answers(self): return set( [ @@ -300,6 +307,18 @@ class Rapid(models.Model): #def GetNonFeedbackQuestionImages(self): #return self.get_images() + def get_suggested_answers(self): + answers = [] + for r in self.region.all(): + for a in self.abnormality.all(): + answers.append("{} {}".format(r.name, a.name)) + + compare_answers = self.get_compare_answers() + + new_answers = [a for a in answers if get_answer_compare(a) not in compare_answers] + + return new_answers + class RapidImage(models.Model): rapid = models.ForeignKey(Rapid, diff --git a/rapids/templates/rapids/question_display_block.html b/rapids/templates/rapids/question_display_block.html index 0b2eab14..8a1abb15 100755 --- a/rapids/templates/rapids/question_display_block.html +++ b/rapids/templates/rapids/question_display_block.html @@ -59,9 +59,21 @@ {% endfor %} {% endif %} + +

Suggested answers

+
    + {% for ans in question.get_suggested_answers %} +
  • {{ans}}
  • + {% endfor %} +
+ +

-
- + +

Image viewer

+
+ +