diff --git a/mayan/apps/common/serializers.py b/mayan/apps/common/serializers.py index c176ce5a45..0983e55d9a 100644 --- a/mayan/apps/common/serializers.py +++ b/mayan/apps/common/serializers.py @@ -5,9 +5,15 @@ from django.contrib.contenttypes.models import ContentType from rest_framework import serializers -class ContentTypeSerializer(serializers.ModelSerializer): +class ContentTypeSerializer(serializers.HyperlinkedModelSerializer): class Meta: - fields = ('app_label', 'id', 'model') + extra_kwargs = { + 'url': { + 'lookup_field': 'pk', 'lookup_url_kwarg': 'content_type_id', + 'view_name': 'rest_api:content_type-detail' + } + } + fields = ('app_label', 'id', 'model', 'url') model = ContentType @@ -15,3 +21,7 @@ class TemplateSerializer(serializers.Serializer): hex_hash = serializers.CharField(read_only=True) name = serializers.CharField(read_only=True) html = serializers.CharField(read_only=True) + url = serializers.HyperlinkedIdentityField( + lookup_field='name', lookup_url_kwarg='name', + view_name='rest_api:template-detail' + )