From 3ebf82443ac750386ebe5d8e890f4af830bac9aa Mon Sep 17 00:00:00 2001 From: Guillaume Pellerin Date: Mon, 25 Jan 2021 17:02:57 +0100 Subject: [PATCH] add CourseType seializer --- teleforma/models/core.py | 6 ++++++ teleforma/views/core.py | 10 ++++++++++ 2 files changed, 16 insertions(+) diff --git a/teleforma/models/core.py b/teleforma/models/core.py index f8b9fea9..c542c124 100644 --- a/teleforma/models/core.py +++ b/teleforma/models/core.py @@ -148,6 +148,12 @@ class CourseType(Model): verbose_name = _('course type') + def from_dict(self, data): + self.name = data['name'] + self.description = data['description'] + self.save() + + class Course(Model): department = ForeignKey('Department', related_name='course', diff --git a/teleforma/views/core.py b/teleforma/views/core.py index 870d4cde..086576db 100644 --- a/teleforma/views/core.py +++ b/teleforma/views/core.py @@ -258,6 +258,16 @@ class CourseListView(CourseAccessMixin, ListView): course = course[0] course.from_dict(course_dict) + remote_list = s.teleforma.get_course_type_list() + if remote_list['result']: + for course_type_dict in remote_list['result']: + course_type = CourseType.objects.filter(name=course_type_dict['name']) + if not course_type: + course_type = CourseType() + else: + course_type = course_type[0] + course_type.from_dict(course_type_dict) + @jsonrpc_method('teleforma.get_dep_courses') def get_dep_courses(request, id): department = Department.objects.get(id=id) -- 2.39.5