31 lines
869 B
Python
31 lines
869 B
Python
"""Common serializers for app comment."""
|
|
from rest_framework import serializers
|
|
|
|
from comment import models
|
|
|
|
|
|
class CommentSerializer(serializers.ModelSerializer):
|
|
"""Comment serializer"""
|
|
nickname = serializers.CharField(read_only=True,
|
|
source='user.username')
|
|
is_mine = serializers.BooleanField(read_only=True)
|
|
profile_pic = serializers.SerializerMethodField()
|
|
|
|
class Meta:
|
|
"""Serializer for model Comment"""
|
|
model = models.Comment
|
|
fields = [
|
|
'id',
|
|
'user_id',
|
|
'is_mine',
|
|
'created',
|
|
'text',
|
|
'mark',
|
|
'nickname',
|
|
'profile_pic'
|
|
]
|
|
|
|
def get_profile_pic(self, obj):
|
|
"""Get profile picture URL"""
|
|
return obj.user.get_full_image_url(request=self.context.get('request'))
|