From: tomwalker Date: Thu, 24 Jul 2014 20:49:59 +0000 (+0100) Subject: starting on new field in Sitting model to store all user answers in a sitting. This... X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=e7d9d3c423f3a8b80baae030ad90d6cd4ac940b0;p=django_quiz.git starting on new field in Sitting model to store all user answers in a sitting. This is necessary for essay type questions as they will need to be manually marked. --- diff --git a/quiz/models.py b/quiz/models.py index 373bcac..c7541a7 100644 --- a/quiz/models.py +++ b/quiz/models.py @@ -327,6 +327,8 @@ class Sitting(models.Model): complete = models.BooleanField(default=False, blank=False) + user_answers = models.TextField(blank=True) + objects = SittingManager() class Meta: @@ -411,6 +413,9 @@ class Sitting(models.Model): else: return self.quiz.fail_text + def add_user_answer(self, question, guess): + pass + class Question(models.Model): """ diff --git a/quiz/templates/question.html b/quiz/templates/question.html index 325c37d..d4327f3 100644 --- a/quiz/templates/question.html +++ b/quiz/templates/question.html @@ -7,7 +7,7 @@ {% block content %} -{% if previous %} +{% if previous.answers %}

The previous question:

{{ previous.previous_question }}

diff --git a/quiz/tests.py b/quiz/tests.py index e4f8a7d..9d883c1 100644 --- a/quiz/tests.py +++ b/quiz/tests.py @@ -244,6 +244,16 @@ class TestSitting(TestCase): self.sitting.mark_quiz_complete() self.assertEqual(self.sitting.complete, True) + def test_user_answers(self): + self.answer1 = Answer.objects.create(id=123, + question=self.question1, + content='bing', + correct=False) + guess = '123' + self.sitting.add_user_answer(self.question1, guess) + + self.assertIn('123', self.sitting.user_answers) + ''' Tests relating to views diff --git a/quiz/views.py b/quiz/views.py index e5fbb51..5ed13d4 100644 --- a/quiz/views.py +++ b/quiz/views.py @@ -1,7 +1,6 @@ import random from django.contrib.auth.decorators import login_required, permission_required -from django.contrib.auth.models import User from django.shortcuts import get_object_or_404, render, render_to_response from django.template import RequestContext from django.utils.decorators import method_decorator