From 02b6ed698282aa24ee674180945f8335684e7794 Mon Sep 17 00:00:00 2001
From: Thibaud Duquennoy <thibaud@duquennoy.fr>
Date: Wed, 27 Feb 2019 23:04:51 +0100
Subject: [PATCH] permissions appears in API and model developper can define
 the context

feature : #84 API returns permissions
feature : #42 Add context based on models
---
 djangoldp/serializers.py | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/djangoldp/serializers.py b/djangoldp/serializers.py
index da463261..f1ef3e8b 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):
-- 
GitLab