From 7e32eb443495a84a223344e4afeb0d8a746eab21 Mon Sep 17 00:00:00 2001 From: Ivlev Denis Date: Fri, 9 Feb 2018 18:18:16 +0300 Subject: [PATCH 1/2] Fix tupos in var names --- api/v1/serializers/course.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/api/v1/serializers/course.py b/api/v1/serializers/course.py index f0aadbee..886af9d9 100644 --- a/api/v1/serializers/course.py +++ b/api/v1/serializers/course.py @@ -121,7 +121,7 @@ class CourseCreateSerializer(serializers.ModelSerializer): t.title = c['data']['title'] t.course = course t.txt = c['data']['txt'] - i.save() + t.save() else: t = Text.objects.create( position=c['data']['position'], @@ -154,7 +154,7 @@ class CourseCreateSerializer(serializers.ModelSerializer): it.txt = c['data']['txt'] it.save() else: - i = ImageText.objects.create( + it = ImageText.objects.create( position=c['data']['position'], title=c['data']['title'], course=course, @@ -205,7 +205,7 @@ class CourseCreateSerializer(serializers.ModelSerializer): t.title = c['data']['title'] t.course = course t.txt = c['data']['txt'] - i.save() + t.save() else: t = Text.objects.create( position=c['data']['position'], @@ -238,7 +238,7 @@ class CourseCreateSerializer(serializers.ModelSerializer): it.txt = c['data']['txt'] it.save() else: - i = ImageText.objects.create( + it = ImageText.objects.create( position=c['data']['position'], title=c['data']['title'], course=course, From 8030323836c83a83f2aceaec4160cb969264d74a Mon Sep 17 00:00:00 2001 From: Ivlev Denis Date: Fri, 9 Feb 2018 18:34:32 +0300 Subject: [PATCH 2/2] Check if id is None --- api/v1/serializers/course.py | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/api/v1/serializers/course.py b/api/v1/serializers/course.py index 886af9d9..7d7c8053 100644 --- a/api/v1/serializers/course.py +++ b/api/v1/serializers/course.py @@ -71,7 +71,10 @@ class CategorySerializer(serializers.ModelSerializer): class CourseCreateSerializer(serializers.ModelSerializer): slug = serializers.SlugField(allow_unicode=True, required=False) - content = serializers.ListSerializer(child=ContentCreateSerializer(), required=False) + content = serializers.ListSerializer( + child=ContentCreateSerializer(), + required=False, + ) materials = MaterialSerializer(many=True, required=False) class Meta: @@ -115,7 +118,7 @@ class CourseCreateSerializer(serializers.ModelSerializer): for c in content: if c['type'] == 'text': - if 'id' in c['data']: + if 'id' in c['data'] and c['data']['id']: t = Text.objects.get(id=c['data']['id']) t.position = c['data']['position'] t.title = c['data']['title'] @@ -130,7 +133,7 @@ class CourseCreateSerializer(serializers.ModelSerializer): txt=c['data']['txt'], ) elif c['type'] == 'image': - if 'id' in c['data']: + if 'id' in c['data'] and c['data']['id']: i = Image.objects.get(id=c['data']['id']) i.position = c['data']['position'] i.title = c['data']['title'] @@ -145,7 +148,7 @@ class CourseCreateSerializer(serializers.ModelSerializer): img=Image.objects.get(id=c['data']['img']['id']), ) elif c['type'] == 'image-text': - if 'id' in c['data']: + if 'id' in c['data'] and c['data']['id']: it = ImageText.objects.get(id=c['data']['id']) it.position = c['data']['position'] it.title = c['data']['title'] @@ -162,7 +165,7 @@ class CourseCreateSerializer(serializers.ModelSerializer): txt=c['data']['txt'], ) elif c['type'] == 'video': - if 'id' in c['data']: + if 'id' in c['data'] and c['data']['id']: v = Video.objects.get(id=c['data']['id']) v.position = c['data']['position'] v.title = c['data']['title'] @@ -177,7 +180,7 @@ class CourseCreateSerializer(serializers.ModelSerializer): url=c['data']['url'], ) for material in materials: - if 'id' in material: + if 'id' in material and material['id']: m = Material.objects.get(id=material['id']) m.title = material['title'] m.cover = ImageObject.objects.get(id=material['cover']) @@ -199,7 +202,7 @@ class CourseCreateSerializer(serializers.ModelSerializer): for c in content: if c['type'] == 'text': - if 'id' in c['data']: + if 'id' in c['data'] and c['data']['id']: t = Text.objects.get(id=c['data']['id']) t.position = c['data']['position'] t.title = c['data']['title'] @@ -214,7 +217,7 @@ class CourseCreateSerializer(serializers.ModelSerializer): txt=c['data']['txt'], ) elif c['type'] == 'image': - if 'id' in c['data']: + if 'id' in c['data'] and c['data']['id']: i = Image.objects.get(id=c['data']['id']) i.position = c['data']['position'] i.title = c['data']['title'] @@ -229,7 +232,7 @@ class CourseCreateSerializer(serializers.ModelSerializer): img=Image.objects.get(id=c['data']['img']['id']), ) elif c['type'] == 'imagetext': - if 'id' in c['data']: + if 'id' in c['data'] and c['data']['id']: it = ImageText.objects.get(id=c['data']['id']) it.position = c['data']['position'] it.title = c['data']['title'] @@ -246,7 +249,7 @@ class CourseCreateSerializer(serializers.ModelSerializer): txt=c['data']['txt'], ) elif c['type'] == 'video': - if 'id' in c['data']: + if 'id' in c['data'] and c['data']['id']: v = Video.objects.get(id=c['data']['id']) v.position = c['data']['position'] v.title = c['data']['title'] @@ -261,7 +264,7 @@ class CourseCreateSerializer(serializers.ModelSerializer): url=c['data']['url'], ) for material in materials: - if 'id' in material: + if 'id' in material and material['id']: m = Material.objects.get(id=material['id']) m.title = material['title'] m.cover = ImageObject.objects.get(id=material['cover'])