See #170: include subscriptions count in channels API

This commit is contained in:
Eliot Berriot 2020-01-20 09:58:04 +01:00
parent 46d77cec2d
commit 3674d1235d
No known key found for this signature in database
GPG key ID: 6B501DFD73514E14
4 changed files with 27 additions and 1 deletions

View file

@ -97,6 +97,15 @@ class ChannelSerializer(serializers.ModelSerializer):
def get_artist(self, obj):
return music_serializers.serialize_artist_simple(obj.artist)
def to_representation(self, obj):
data = super().to_representation(obj)
if self.context.get("subscriptions_count"):
data["subscriptions_count"] = self.get_subscriptions_count(obj)
return data
def get_subscriptions_count(self, obj):
return obj.actor.received_follows.exclude(approved=False).count()
class SubscriptionSerializer(serializers.Serializer):
approved = serializers.BooleanField(read_only=True)