mirror of https://github.com/jumpserver/jumpserver
perf: Export template with prompts
parent
4e719ecacd
commit
ef2b12fa0f
|
@ -247,6 +247,7 @@ class AccountSerializer(AccountCreateUpdateSerializerMixin, BaseAccountSerialize
|
|||
'name': {'required': False},
|
||||
'source_id': {'required': False, 'allow_null': True},
|
||||
}
|
||||
fields_unimport_template = ['params']
|
||||
|
||||
@classmethod
|
||||
def setup_eager_loading(cls, queryset):
|
||||
|
|
|
@ -16,6 +16,7 @@ class CustomSerializer(AssetSerializer):
|
|||
class Meta(AssetSerializer.Meta):
|
||||
model = Custom
|
||||
fields = AssetSerializer.Meta.fields + ['custom_info']
|
||||
fields_unimport_template = ['custom_info']
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
super().__init__(*args, **kwargs)
|
||||
|
|
|
@ -147,6 +147,10 @@ class PlatformProtocolSerializer(serializers.ModelSerializer):
|
|||
name, port = data.split('/')
|
||||
return {'name': name, 'port': port}
|
||||
|
||||
@staticmethod
|
||||
def get_render_help_text():
|
||||
return _('Protocols, format is ["protocol/port"]')
|
||||
|
||||
|
||||
class PlatformCustomField(serializers.Serializer):
|
||||
TYPE_CHOICES = [(t, t) for t, c in type_field_map.items()]
|
||||
|
|
|
@ -48,17 +48,18 @@ class BaseFileRenderer(BaseRenderer):
|
|||
|
||||
def get_rendered_fields(self):
|
||||
fields = self.serializer.fields
|
||||
meta = getattr(self.serializer, 'Meta', None)
|
||||
if self.template == 'import':
|
||||
fields = [v for k, v in fields.items() if not v.read_only and k != "org_id" and k != 'id']
|
||||
fields_unimport = getattr(meta, 'fields_unimport_template', [])
|
||||
fields = [v for v in fields if v.field_name not in fields_unimport]
|
||||
elif self.template == 'update':
|
||||
fields = [v for k, v in fields.items() if not v.read_only and k != "org_id"]
|
||||
else:
|
||||
fields = [v for k, v in fields.items() if not v.write_only and k != "org_id"]
|
||||
|
||||
meta = getattr(self.serializer, 'Meta', None)
|
||||
if meta:
|
||||
fields_unexport = getattr(meta, 'fields_unexport', [])
|
||||
fields = [v for v in fields if v.field_name not in fields_unexport]
|
||||
fields_unexport = getattr(meta, 'fields_unexport', [])
|
||||
fields = [v for v in fields if v.field_name not in fields_unexport]
|
||||
return fields
|
||||
|
||||
@staticmethod
|
||||
|
|
Loading…
Reference in New Issue