From: Guillaume Pellerin Date: Mon, 25 Jan 2021 16:02:57 +0000 (+0100) Subject: add CourseType seializer X-Git-Tag: 1.4.3~32^2 X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=e3cd7f99bccfadf210fead5241e4e09feb8e88da;p=teleforma.git add CourseType seializer --- diff --git a/teleforma/models/core.py b/teleforma/models/core.py index 0e8b0e74..bd18ee4a 100755 --- a/teleforma/models/core.py +++ b/teleforma/models/core.py @@ -194,6 +194,12 @@ class CourseType(Model): } return dict + def from_dict(self, data): + self.name = data['name'] + self.description = data['description'] + self.save() + + class Course(Model): department = models.ForeignKey('Department', related_name='course', diff --git a/teleforma/views/core.py b/teleforma/views/core.py index dd7be7e5..ce49dddd 100644 --- a/teleforma/views/core.py +++ b/teleforma/views/core.py @@ -424,6 +424,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)