From f05a4a67c5b54436ecd230ceb0de40a00d678935 Mon Sep 17 00:00:00 2001 From: CaptainB Date: Thu, 24 Apr 2025 13:42:58 +0800 Subject: [PATCH] feat: refactor response serializers for model parameters and lists --- apps/models_provider/api/provide.py | 31 +++++++++++++++------------ apps/models_provider/views/model.py | 2 ++ apps/models_provider/views/provide.py | 2 +- 3 files changed, 20 insertions(+), 15 deletions(-) diff --git a/apps/models_provider/api/provide.py b/apps/models_provider/api/provide.py index 90551096e..ef2889589 100644 --- a/apps/models_provider/api/provide.py +++ b/apps/models_provider/api/provide.py @@ -46,6 +46,21 @@ class ModelParamsFormSerializer(serializers.Serializer): props_info = serializers.DictField(required=False, label=_("props info")) +class ModelParamsFormResponse(ResultSerializer): + def get_data(self): + return serializers.ListSerializer(child=ModelParamsFormSerializer()) + + +class ModelListResponse(ResultSerializer): + def get_data(self): + return serializers.ListSerializer(child=ModelListSerializer()) + + +class ProvideListResponse(ResultSerializer): + def get_data(self): + return serializers.ListSerializer(child=ProvideListSerializer()) + + class ProvideApi(APIMixin): class ModelParamsForm(APIMixin): @staticmethod @@ -73,11 +88,7 @@ class ProvideApi(APIMixin): @staticmethod def get_response(): - class ProvideListSerializer(ResultSerializer): - def get_data(self): - return serializers.ListSerializer(child=ModelParamsFormSerializer()) - - return ProvideListSerializer + return ModelParamsFormResponse class ModelList(APIMixin): @staticmethod @@ -99,11 +110,7 @@ class ProvideApi(APIMixin): @staticmethod def get_response(): - class ProvideListSerializer(ResultSerializer): - def get_data(self): - return serializers.ListSerializer(child=ModelListSerializer()) - - return ProvideListSerializer + return ModelListResponse @staticmethod def get_response(): @@ -126,8 +133,4 @@ class ProvideApi(APIMixin): @staticmethod def get_response(): - class ProvideListResponse(ResultSerializer): - def get_data(self): - return serializers.ListSerializer(child=ProvideListSerializer()) - return ProvideListResponse diff --git a/apps/models_provider/views/model.py b/apps/models_provider/views/model.py index ffea535c7..f62679496 100644 --- a/apps/models_provider/views/model.py +++ b/apps/models_provider/views/model.py @@ -118,6 +118,7 @@ class Model(APIView): description=_('Save model parameter form'), operation_id=_('Save model parameter form'), parameters=GetModelApi.get_query_params_api(), + request=GetModelApi.get_request(), responses=ProvideApi.ModelParamsForm.get_response(), tags=[_('Model')]) @has_permissions(PermissionConstants.MODEL_READ.get_workspace_permission()) @@ -148,6 +149,7 @@ class Model(APIView): description=_('Pause model download'), operation_id=_('Pause model download'), parameters=GetModelApi.get_query_params_api(), + request=GetModelApi.get_request(), responses=DefaultModelResponse.get_response(), tags=[_('Model')]) @has_permissions(PermissionConstants.MODEL_CREATE.get_workspace_permission()) diff --git a/apps/models_provider/views/provide.py b/apps/models_provider/views/provide.py index 8f6e232ee..d4dd8a73c 100644 --- a/apps/models_provider/views/provide.py +++ b/apps/models_provider/views/provide.py @@ -73,7 +73,7 @@ class Provide(APIView): @extend_schema(methods=['GET'], description=_('Get model default parameters'), - operation_id=_('Get the model creation form'), + operation_id=_('Get model default parameters'), parameters=ProvideApi.ModelParamsForm.get_query_params_api(), responses=ProvideApi.ModelParamsForm.get_response(), tags=[_('Model')])