From cbde665ae655743e65bf1314f27774d22390b7d9 Mon Sep 17 00:00:00 2001 From: "Crane.z" <1481445951@qq.com> Date: Sat, 28 Feb 2026 15:01:05 +0800 Subject: [PATCH] =?UTF-8?q?fix=EF=BC=9AIn=20the=20import=20template,=20pro?= =?UTF-8?q?tocols=20are=20not=20required,=20but=20leaving=20them=20empty?= =?UTF-8?q?=20causes=20the=20asset=20import=20to=20fail.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/assets/serializers/asset/common.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/assets/serializers/asset/common.py b/apps/assets/serializers/asset/common.py index 93c1eb6f2..b0b84d354 100644 --- a/apps/assets/serializers/asset/common.py +++ b/apps/assets/serializers/asset/common.py @@ -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'))