fix:In the import template, protocols are not required, but leaving them empty causes the asset import to fail.

This commit is contained in:
Crane.z
2026-02-28 15:01:05 +08:00
parent 820b831588
commit cbde665ae6

View File

@@ -29,7 +29,7 @@ __all__ = [
class AssetProtocolsSerializer(serializers.ModelSerializer):
port = serializers.IntegerField(required=False, allow_null=True, max_value=65535, min_value=0)
port = serializers.IntegerField(required=True, allow_null=True, max_value=65535, min_value=0)
def get_render_help_text(self):
if self.parent and self.parent.many:
@@ -144,7 +144,7 @@ class NodeDisplaySerializer(serializers.ListField):
class AssetSerializer(BulkOrgResourceModelSerializer, ResourceLabelsMixin, WritableNestedModelSerializer):
category = LabeledChoiceField(choices=Category.choices, read_only=True, label=_('Category'))
type = LabeledChoiceField(choices=AllTypes.choices(), read_only=True, label=_('Type'))
protocols = AssetProtocolsSerializer(many=True, required=False, label=_('Protocols'), default=())
protocols = AssetProtocolsSerializer(many=True, required=True, label=_('Protocols'))
accounts = AssetAccountSerializer(many=True, required=False, allow_null=True, write_only=True, label=_('Accounts'))
nodes_display = NodeDisplaySerializer(read_only=False, required=False, label=_("Node path"))
auto_config = serializers.DictField(read_only=True, label=_('Auto info'))