diff --git a/djangoldp/serializers.py b/djangoldp/serializers.py index da4632611caaa5efb7bb040a461bba7cc8153733..f1ef3e8ba76833a53cec6df719f3e3027a882e7d 100644 --- a/djangoldp/serializers.py +++ b/djangoldp/serializers.py @@ -194,8 +194,16 @@ class LDPSerializer(HyperlinkedModelSerializer): if hasattr(obj._meta, 'rdf_type'): data['@type'] = obj._meta.rdf_type + data['permissions'] = [{'mode': {'@type': name.split('_')[0]}} for name in get_perms(self.context['request'].user, obj)] + + if hasattr(obj._meta, 'permission_classes'): + data['permissions'] += [{'mode': {'@type':str(perm.__name__)}} for perm in obj._meta.permission_classes] + + if hasattr(obj._meta, 'rdf_context'): + data['@context'] = obj._meta.rdf_context + return data def build_standard_field(self, field_name, model_field):