rank.py 813 B

12345678910111213141516171819202122232425262728293031323334
  1. from rest_framework import serializers
  2. from misago.core.utils import format_plaintext_for_html
  3. from misago.users.models import Rank
  4. __all__ = ['RankSerializer']
  5. class RankSerializer(serializers.ModelSerializer):
  6. description = serializers.SerializerMethodField()
  7. absolute_url = serializers.SerializerMethodField()
  8. class Meta:
  9. model = Rank
  10. fields = (
  11. 'id',
  12. 'name',
  13. 'slug',
  14. 'description',
  15. 'title',
  16. 'css_class',
  17. 'is_tab',
  18. 'absolute_url',
  19. )
  20. def get_description(self, obj):
  21. if obj.description:
  22. return format_plaintext_for_html(obj.description)
  23. else:
  24. return ''
  25. def get_absolute_url(self, obj):
  26. return obj.get_absolute_url()