From d070e85eea387e1b88970d0bde3d1ced5afe84bc Mon Sep 17 00:00:00 2001 From: Ernesto Rico Schmidt <ernesto@helsinki.at> Date: Fri, 15 Nov 2024 15:30:08 -0400 Subject: [PATCH] fix: set the PlaylistEntry order in the serializer --- program/serializers.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/program/serializers.py b/program/serializers.py index d7cae46..51b27d8 100644 --- a/program/serializers.py +++ b/program/serializers.py @@ -1524,7 +1524,9 @@ class PlaylistSerializer(serializers.ModelSerializer): with transaction.atomic(): playlist = Playlist.objects.create(created_by=user.username, **validated_data) - for entry_data in entries: + for order, entry_data in enumerate(entries, start=1): + entry_data.update({"order": order}) + try: PlaylistEntry.objects.create(playlist=playlist, **entry_data) except IntegrityError: @@ -1568,7 +1570,9 @@ class PlaylistSerializer(serializers.ModelSerializer): for entry in instance.entries.all(): entry.delete(keep_parents=True) - for entry_data in validated_data.get("entries"): + for order, entry_data in enumerate(validated_data.get("entries"), start=1): + entry_data.update({"order": order}) + try: PlaylistEntry.objects.create(playlist=instance, **entry_data) except IntegrityError: -- GitLab