mirror of https://github.com/jumpserver/jumpserver
fix: 修复创建授权时actions为空保存时报错的问题
parent
797b184c7f
commit
224a9fbdb3
|
@ -5,7 +5,7 @@ from rest_framework import serializers
|
|||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from orgs.mixins.serializers import BulkOrgResourceModelSerializer
|
||||
from perms.models import ApplicationPermission
|
||||
from perms.models import ApplicationPermission, Action
|
||||
from ..base import ActionsField, BasePermissionSerializer
|
||||
|
||||
__all__ = [
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
from rest_framework import serializers
|
||||
from perms.models import Action
|
||||
from orgs.mixins.serializers import BulkOrgResourceModelSerializer
|
||||
from rest_framework.fields import empty
|
||||
|
||||
__all__ = ['ActionsDisplayField', 'ActionsField', 'BasePermissionSerializer']
|
||||
|
||||
|
@ -10,6 +11,12 @@ class ActionsField(serializers.MultipleChoiceField):
|
|||
kwargs['choices'] = Action.CHOICES
|
||||
super().__init__(*args, **kwargs)
|
||||
|
||||
def run_validation(self, data=empty):
|
||||
data = super(ActionsField, self).run_validation()
|
||||
if isinstance(data, list):
|
||||
data = Action.choices_to_value(value=data)
|
||||
return data
|
||||
|
||||
def to_representation(self, value):
|
||||
return Action.value_to_choices(value)
|
||||
|
||||
|
|
Loading…
Reference in New Issue