src/notes/api/views/auth.py
author ymh <ymh.work@gmail.com>
Wed, 19 Jul 2017 15:57:13 +0200
changeset 119 8ff8e2aee0f9
parent 117 9864fe2067cd
child 130 78246db1cbac
permissions -rw-r--r--
add parameter to filter session and note by updated date. Add pagination on sessions and notes. add read only endpoint at root level to list notes

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)