mirror of https://github.com/jumpserver/jumpserver
perf: 统一用户名称的label显示
parent
f9c9c9d525
commit
b93b64255b
|
@ -27,14 +27,7 @@ class RoleBindingViewSet(OrgBulkModelViewSet):
|
|||
|
||||
def get_queryset(self):
|
||||
queryset = self._get_queryset() \
|
||||
.prefetch_related('user', 'role', 'org') \
|
||||
.annotate(
|
||||
user_display=Concat(
|
||||
F('user__name'), Value('('),
|
||||
F('user__username'), Value(')')
|
||||
),
|
||||
role_display=F('role__name')
|
||||
)
|
||||
.prefetch_related('user', 'role', 'org')
|
||||
return queryset
|
||||
|
||||
def _get_queryset(self):
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
from django.utils.translation import gettext_lazy as _
|
||||
from rest_framework import serializers
|
||||
|
||||
from common.serializers.fields import ObjectRelatedField
|
||||
from users.models import User
|
||||
from orgs.serializers import CurrentOrgDefault
|
||||
from ..models import RoleBinding, SystemRoleBinding, OrgRoleBinding
|
||||
|
||||
|
@ -10,16 +12,18 @@ __all__ = [
|
|||
|
||||
|
||||
class RoleBindingSerializer(serializers.ModelSerializer):
|
||||
user = ObjectRelatedField(
|
||||
required=False, queryset=User.objects,
|
||||
label=_('User'), attrs=('id', 'name', 'username')
|
||||
)
|
||||
|
||||
class Meta:
|
||||
model = RoleBinding
|
||||
fields = [
|
||||
'id', 'user', 'user_display', 'role', 'role_display',
|
||||
'scope', 'org', 'org_name',
|
||||
'id', 'user', 'role', 'scope', 'org', 'org_name',
|
||||
]
|
||||
read_only_fields = ['scope']
|
||||
extra_kwargs = {
|
||||
'user_display': {'label': _('User display')},
|
||||
'role_display': {'label': _('Role display')},
|
||||
'org_name': {'label': _("Org name")}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue