Skip to content
Snippets Groups Projects
serializers.py 1.18 KiB
Newer Older
  • Learn to ignore specific revisions
  • from funkwhale_api.activity import serializers as activity_serializers
    from funkwhale_api.music.serializers import TrackActivitySerializer
    from funkwhale_api.users.serializers import UserActivitySerializer
    
    
    class ListeningActivitySerializer(activity_serializers.ModelSerializer):
        type = serializers.SerializerMethodField()
        object = TrackActivitySerializer(source='track')
        actor = UserActivitySerializer(source='user')
    
        published = serializers.DateTimeField(source='creation_date')
    
    
        class Meta:
            model = models.Listening
            fields = [
                'id',
                'local_id',
                'object',
                'type',
                'actor',
                'published'
            ]
    
        def get_actor(self, obj):
            return UserActivitySerializer(obj.user).data
    
        def get_type(self, obj):
            return 'Listen'
    
    
    
    class ListeningSerializer(serializers.ModelSerializer):
    
        class Meta:
            model = models.Listening
    
            fields = ('id', 'user', 'track', 'creation_date')
    
            validated_data['user'] = self.context['user']