mirror of
https://github.com/jumpserver/jumpserver.git
synced 2025-04-28 11:25:42 +00:00
perf: if the apply-asset-ticket name is 128 characters long, will raise 500
This commit is contained in:
parent
f016ae6161
commit
dc6308b030
@ -69,10 +69,17 @@ class BaseApplyAssetSerializer(serializers.Serializer):
|
|||||||
|
|
||||||
return attrs
|
return attrs
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def _get_permission_name(ticket):
|
||||||
|
name = _('Created by ticket ({}-{})').format(ticket.title, str(ticket.id)[:4])
|
||||||
|
if len(name) > 128:
|
||||||
|
name = name[:121] + '...' + name[-4:]
|
||||||
|
return name
|
||||||
|
|
||||||
@atomic
|
@atomic
|
||||||
def create(self, validated_data):
|
def create(self, validated_data):
|
||||||
instance = super().create(validated_data)
|
instance = super().create(validated_data)
|
||||||
name = _('Created by ticket ({}-{})').format(instance.title, str(instance.id)[:4])
|
name = self._get_permission_name(instance)
|
||||||
org_id = instance.org_id
|
org_id = instance.org_id
|
||||||
with tmp_to_org(org_id):
|
with tmp_to_org(org_id):
|
||||||
if not self.permission_model.objects.filter(name=name).exists():
|
if not self.permission_model.objects.filter(name=name).exists():
|
||||||
|
Loading…
Reference in New Issue
Block a user