I have following Serializer
class PersonSerializer(serializers.ModelSerializer):
comments = serializers.SerializerMethodField('paginated_comments')
images = ImageSerializer(source='image_set', many=True)
class Meta:
model = Person
exclude = ('paid', 'status', 'register_date', 'paid_date')
def paginated_comments(self, obj):
page_size = self.context['request'].query_params.get('size') or 12
paginator = Paginator(obj.comment_set.all(), page_size)
page_number = self.context['request'].query_params.get('page') or 1
comments = paginator.page(page_number)
serializer = CommentSerializer(comments, many=True)
return OrderedDict(
[
('count', len(serializer.data) if serializer.data else 0),
('next', comments.has_next()),
('previous', comments.has_previous()),
('results', serializer.data)
]
)
Which returns info about user
id": "718b309c-864d-4c26-a80e-2e744ac3102a",
"comments": {},
"images": [],
"name": "piwщ",
"city": "piwщ",
}
I want to add to result field is_admin:True
if user is admin, but if not, i don't want to add this field to result
The expected output if user is admin:
{d": "718b309c-864d-4c26-a80e-2e744ac3102a",
"comments": {},
"images": [],
"name": "piwщ",
"city": "piwщ",
"is_admin": True
}
The expected output if user is not admin:
{d": "718b309c-864d-4c26-a80e-2e744ac3102a",
"comments": {},
"images": [],
"name": "piwщ",
"city": "piwщ",
}