summaryrefslogtreecommitdiff
path: root/yaksh/models.py
diff options
context:
space:
mode:
authorPalaparthy Adityachandra2020-04-30 17:39:44 +0530
committerGitHub2020-04-30 17:39:44 +0530
commit833b96ac49499810934ada8ba02750623455d0cd (patch)
tree16d974b5a5e1effaf15be2235813dca4108c4f29 /yaksh/models.py
parent53a0c4ad3e733f3960000527f83565f2fd8fc412 (diff)
parent2fd29bf1fff3d57a49b8a5cdffa9efc305946214 (diff)
downloadonline_test-833b96ac49499810934ada8ba02750623455d0cd.tar.gz
online_test-833b96ac49499810934ada8ba02750623455d0cd.tar.bz2
online_test-833b96ac49499810934ada8ba02750623455d0cd.zip
Merge pull request #674 from CruiseDevice/API
Update Yaksh API
Diffstat (limited to 'yaksh/models.py')
-rw-r--r--yaksh/models.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/yaksh/models.py b/yaksh/models.py
index 9bcb132..64489b8 100644
--- a/yaksh/models.py
+++ b/yaksh/models.py
@@ -1452,6 +1452,19 @@ class Question(models.Model):
tc_list.extend(test_case)
return tc_list
+ def get_test_cases_as_dict(self, **kwargs):
+ tc_list = []
+ for tc in self.testcase_set.values_list("type", flat=True).distinct():
+ test_case_ctype = ContentType.objects.get(app_label="yaksh",
+ model=tc)
+ test_case = test_case_ctype.get_all_objects_for_this_type(
+ question=self,
+ **kwargs
+ )
+ for tc in test_case:
+ tc_list.append(model_to_dict(tc))
+ return tc_list
+
def get_test_case(self, **kwargs):
for tc in self.testcase_set.all():
test_case_type = tc.type
@@ -1743,6 +1756,7 @@ class QuestionPaper(models.Model):
for question_set in self.random_questions.all():
marks += question_set.marks * question_set.num_questions
self.total_marks = marks
+ self.save()
def _get_questions_for_answerpaper(self):
""" Returns fixed and random questions for the answer paper"""