From fc34980f20108ce17f0884e80fa39e3df19c34c7 Mon Sep 17 00:00:00 2001 From: Bai Date: Wed, 1 Feb 2023 17:03:42 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E4=B8=BB=E6=9C=BA?= =?UTF-8?q?=E8=AF=A6=E6=83=85=E6=98=BE=E7=A4=BA=E7=A1=AC=E4=BB=B6=E4=BF=A1?= =?UTF-8?q?=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/assets/api/asset/asset.py | 2 +- apps/assets/api/asset/host.py | 12 +++++++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/apps/assets/api/asset/asset.py b/apps/assets/api/asset/asset.py index a02d35121..d6107631c 100644 --- a/apps/assets/api/asset/asset.py +++ b/apps/assets/api/asset/asset.py @@ -71,7 +71,7 @@ class AssetViewSet(SuggestionMixin, NodeFilterMixin, OrgBulkModelViewSet): ("platform", serializers.PlatformSerializer), ("suggestion", serializers.MiniAssetSerializer), ("gateways", serializers.GatewaySerializer), - ("spec_info", serializers.SpecSerializer), + ("spec_info", serializers.SpecSerializer) ) rbac_perms = ( ("match", "assets.match_asset"), diff --git a/apps/assets/api/asset/host.py b/apps/assets/api/asset/host.py index d2ddc954d..3e11b8ad5 100644 --- a/apps/assets/api/asset/host.py +++ b/apps/assets/api/asset/host.py @@ -1,5 +1,8 @@ from assets.models import Host, Asset -from assets.serializers import HostSerializer +from assets.serializers import HostSerializer, HostInfoSerializer +from rest_framework.decorators import action +from rest_framework.response import Response + from .asset import AssetViewSet __all__ = ['HostViewSet'] @@ -12,4 +15,11 @@ class HostViewSet(AssetViewSet): def get_serializer_classes(self): serializer_classes = super().get_serializer_classes() serializer_classes['default'] = HostSerializer + serializer_classes['info'] = HostInfoSerializer return serializer_classes + + @action(methods=["GET"], detail=True, url_path="info") + def info(self, *args, **kwargs): + asset = super().get_object() + return Response(asset.info) +