diff --git a/apps/rbac/api/role.py b/apps/rbac/api/role.py index dd0220692..c828a4978 100644 --- a/apps/rbac/api/role.py +++ b/apps/rbac/api/role.py @@ -1,13 +1,13 @@ from django.db.models import Count from django.utils.translation import ugettext as _ -from rest_framework.exceptions import PermissionDenied from rest_framework.decorators import action +from rest_framework.exceptions import PermissionDenied from common.api import JMSModelViewSet -from ..filters import RoleFilter -from ..serializers import RoleSerializer, RoleUserSerializer -from ..models import Role, SystemRole, OrgRole from .permission import PermissionViewSet +from ..filters import RoleFilter +from ..models import Role, SystemRole, OrgRole +from ..serializers import RoleSerializer, RoleUserSerializer __all__ = [ 'RoleViewSet', 'SystemRoleViewSet', 'OrgRoleViewSet', @@ -52,7 +52,7 @@ class RoleViewSet(JMSModelViewSet): clone = Role.objects.filter(id=clone_from).first() if not clone: return - instance.permissions.set(clone.permissions.all()) + instance.permissions.set(clone.get_permissions()) def perform_update(self, serializer): instance = serializer.instance