Adding permissions list service

remotes/origin/enhancement/email-actions
Jesús Espino 2014-02-27 22:45:07 +01:00
parent baa2cc344f
commit 7e6063ae62
3 changed files with 17 additions and 3 deletions

View File

@ -5,6 +5,7 @@ import uuid
from django.db.models.loading import get_model
from django.db.models import Q
from django.contrib.auth import logout, login, authenticate
from django.contrib.auth.models import Permission
from django.utils.translation import ugettext_lazy as _
from rest_framework.decorators import list_route, action
@ -16,11 +17,16 @@ from djmail.template_mail import MagicMailBuilder
from taiga.base import exceptions as exc
from taiga.base.filters import FilterBackend
from taiga.base.api import ModelCrudViewSet, RetrieveModelMixin
from taiga.base.api import ModelCrudViewSet, RetrieveModelMixin, ModelListViewSet
from .models import User, Role
from .serializers import UserSerializer, RecoverySerializer
from .serializers import UserSerializer, RecoverySerializer, PermissionSerializer
class PermissionsViewSet(ModelListViewSet):
permission_classes = (IsAuthenticated,)
serializer_class = PermissionSerializer
queryset = Permission.objects.all()
paginate_by = 0
class UsersViewSet(ModelCrudViewSet):

View File

@ -1,11 +1,18 @@
# -*- coding: utf-8 -*-
from django.utils.translation import ugettext_lazy as _
from django.contrib.auth.models import Permission
from rest_framework import serializers
from .models import User, Role
class PermissionSerializer(serializers.ModelSerializer):
class Meta:
model = Permission
fields = ['id', 'codename']
class UserSerializer(serializers.ModelSerializer):
full_name = serializers.CharField(source='get_full_name', required=False)

View File

@ -2,7 +2,7 @@
from taiga.base import routers
from taiga.base.auth.api import AuthViewSet
from taiga.base.users.api import UsersViewSet
from taiga.base.users.api import UsersViewSet, PermissionsViewSet
from taiga.base.searches.api import SearchViewSet
from taiga.base.domains.api import DomainViewSet, DomainMembersViewSet
from taiga.base.resolver.api import ResolverViewSet
@ -23,6 +23,7 @@ router = routers.DefaultRouter(trailing_slash=False)
# taiga.base.users
router.register(r"users", UsersViewSet, base_name="users")
router.register(r"permissions", PermissionsViewSet, base_name="permissions")
router.register(r"roles", RolesViewSet, base_name="roles")
router.register(r"auth", AuthViewSet, base_name="auth")