src/notes/api/views/auth.py
changeset 117 9864fe2067cd
parent 101 e165aa89ac82
child 130 78246db1cbac
--- a/src/notes/api/views/auth.py	Mon Jul 17 14:13:32 2017 +0200
+++ b/src/notes/api/views/auth.py	Tue Jul 18 17:08:27 2017 +0200
@@ -3,13 +3,25 @@
 from django.contrib.auth.models import Group
 from rest_framework import viewsets
 
-from ..serializers.auth import (GroupSerializer)
+from ..serializers.auth import (GroupSerializer, WriteGroupSerializer, DetailGroupSerializer)
+from ..permissions.auth import (GroupPermission, )
 
 logger = logging.getLogger(__name__)
 
 
 class GroupViewSet(viewsets.ModelViewSet):
     serializer_class = GroupSerializer
-    permission_classes = ()
+    permission_classes = (GroupPermission, )
+    lookup_field = 'name'
+
     def get_queryset(self):
         return Group.objects.all()
+
+    serializers = {
+        'create': WriteGroupSerializer,
+        'update': WriteGroupSerializer,
+        'retrieve': DetailGroupSerializer,
+    }
+
+    def get_serializer_class(self):
+        return self.serializers.get(self.action, GroupSerializer)