diff options
author | Palaparthy Adityachandra | 2020-04-30 17:39:44 +0530 |
---|---|---|
committer | GitHub | 2020-04-30 17:39:44 +0530 |
commit | 833b96ac49499810934ada8ba02750623455d0cd (patch) | |
tree | 16d974b5a5e1effaf15be2235813dca4108c4f29 /yaksh/models.py | |
parent | 53a0c4ad3e733f3960000527f83565f2fd8fc412 (diff) | |
parent | 2fd29bf1fff3d57a49b8a5cdffa9efc305946214 (diff) | |
download | online_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.py | 14 |
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""" |