diff --git a/backend/secfit/workouts/serializers.py b/backend/secfit/workouts/serializers.py index a966ed3d752dcf54767a10f2b4b53d416e095a33..5d5a3ce5ad8867dbc1a80a7d7403f309cbc43a34 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