Merge pull request #659 from FiveBoroughs/fix/channel-stream-order-serialization

Fix: Preserve stream order in ChannelSerializer PATCH/PUT responses
This commit is contained in:
SergeantPanda 2025-11-19 15:59:38 -06:00 committed by GitHub
commit 204a5a0c76
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -294,8 +294,17 @@ class ChannelSerializer(serializers.ModelSerializer):
if include_streams:
self.fields["streams"] = serializers.SerializerMethodField()
return super().to_representation(instance)
return super().to_representation(instance)
else:
# Fix: For PATCH/PUT responses, ensure streams are ordered
representation = super().to_representation(instance)
if "streams" in representation:
representation["streams"] = list(
instance.streams.all()
.order_by("channelstream__order")
.values_list("id", flat=True)
)
return representation
def get_logo(self, obj):
return LogoSerializer(obj.logo).data