src/notes/api/views/auth.py
changeset 117 9864fe2067cd
parent 101 e165aa89ac82
child 130 78246db1cbac
equal deleted inserted replaced
116:672e3c4bbd0c 117:9864fe2067cd
     1 import logging
     1 import logging
     2 
     2 
     3 from django.contrib.auth.models import Group
     3 from django.contrib.auth.models import Group
     4 from rest_framework import viewsets
     4 from rest_framework import viewsets
     5 
     5 
     6 from ..serializers.auth import (GroupSerializer)
     6 from ..serializers.auth import (GroupSerializer, WriteGroupSerializer, DetailGroupSerializer)
       
     7 from ..permissions.auth import (GroupPermission, )
     7 
     8 
     8 logger = logging.getLogger(__name__)
     9 logger = logging.getLogger(__name__)
     9 
    10 
    10 
    11 
    11 class GroupViewSet(viewsets.ModelViewSet):
    12 class GroupViewSet(viewsets.ModelViewSet):
    12     serializer_class = GroupSerializer
    13     serializer_class = GroupSerializer
    13     permission_classes = ()
    14     permission_classes = (GroupPermission, )
       
    15     lookup_field = 'name'
       
    16 
    14     def get_queryset(self):
    17     def get_queryset(self):
    15         return Group.objects.all()
    18         return Group.objects.all()
       
    19 
       
    20     serializers = {
       
    21         'create': WriteGroupSerializer,
       
    22         'update': WriteGroupSerializer,
       
    23         'retrieve': DetailGroupSerializer,
       
    24     }
       
    25 
       
    26     def get_serializer_class(self):
       
    27         return self.serializers.get(self.action, GroupSerializer)