src/notes/api/views/auth.py
author duong tam kien <tk@deveha.com>
Tue, 18 Jul 2017 18:15:51 +0200
changeset 121 21ac67ebf9e7
parent 117 9864fe2067cd
child 130 78246db1cbac
permissions -rw-r--r--
all screens are now covered (but not completed)

import logging

from django.contrib.auth.models import Group
from rest_framework import viewsets

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 = (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)