From a15c063cfdf21b2b7ea91116fc064a31fc7844a9 Mon Sep 17 00:00:00 2001 From: ibooking-sigurd <sigurd.augdal@ibooking.no> Date: Mon, 19 Apr 2021 13:49:14 +0200 Subject: [PATCH] Rewrite part of the workout-serializer to reduce the complexity. --- backend/secfit/workouts/serializers.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/backend/secfit/workouts/serializers.py b/backend/secfit/workouts/serializers.py index a966ed3..5d5a3ce 100644 --- a/backend/secfit/workouts/serializers.py +++ b/backend/secfit/workouts/serializers.py @@ -167,8 +167,12 @@ class WorkoutSerializer(serializers.HyperlinkedModelSerializer): if "files" in validated_data: files_data = validated_data.pop("files") files = instance.files + handle_workout_files(self, files, files_data) - for file, file_data in zip(files.all(), files_data): + return instance + + def handle_workout_files(self, files, files_data): + for file, file_data in zip(files.all(), files_data): file.file = file_data.get("file", file.file) # If new files have been added, creating new WorkoutFiles @@ -184,8 +188,6 @@ class WorkoutSerializer(serializers.HyperlinkedModelSerializer): for i in range(len(files_data), len(files.all())): files.all()[i].delete() - return instance - def get_owner_username(self, obj): """Returns the owning user's username -- GitLab