1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- from rest_framework import serializers
- from django.urls import reverse
- from misago.threads.models import PostLike
- class PostLikeSerializer(serializers.ModelSerializer):
- avatars = serializers.SerializerMethodField()
- liker_id = serializers.SerializerMethodField()
- username = serializers.SerializerMethodField()
- url = serializers.SerializerMethodField()
- class Meta:
- model = PostLike
- fields = [
- 'id',
- 'avatars',
- 'liked_on',
- 'liker_id',
- 'username',
- 'url',
- ]
- def get_liker_id(self, obj):
- return obj['liker_id']
- def get_username(self, obj):
- return obj['liker_name']
- def get_avatars(self, obj):
- return obj.get('liker__avatars')
- def get_url(self, obj):
- if obj['liker_id']:
- return reverse(
- 'misago:user', kwargs={
- 'slug': obj['liker_slug'],
- 'pk': obj['liker_id'],
- }
- )
- else:
- return None
|