refactor: add share model

This commit is contained in:
wxg0103 2025-06-09 15:10:13 +08:00
parent 387967ca69
commit 07caf1ffa5
3 changed files with 24 additions and 3 deletions

View File

@ -388,4 +388,4 @@ class ModelSerializer(serializers.Serializer):
model = QuerySet(Model).filter(id=model_id).first()
model.model_params_form = model_params_form
model.save()
return True
return True

View File

@ -12,9 +12,12 @@ urlpatterns = [
path('provider/model_params_form', views.Provide.ModelParamsForm.as_view()),
path('provider/model_form', views.Provide.ModelForm.as_view()),
path('workspace/<str:workspace_id>/model', views.ModelSetting.as_view()),
path('workspace/<str:workspace_id>/model/<str:model_id>/model_params_form', views.ModelSetting.ModelParamsForm.as_view()),
path('workspace/<str:workspace_id>/share_model', views.ModelSetting.Share.as_view()),
path('workspace/<str:workspace_id>/model/<str:model_id>/model_params_form',
views.ModelSetting.ModelParamsForm.as_view()),
path('workspace/<str:workspace_id>/model/<str:model_id>', views.ModelSetting.Operate.as_view()),
path('workspace/<str:workspace_id>/model/<str:model_id>/pause_download', views.ModelSetting.PauseDownload.as_view()),
path('workspace/<str:workspace_id>/model/<str:model_id>/pause_download',
views.ModelSetting.PauseDownload.as_view()),
path('workspace/<str:workspace_id>/model/<str:model_id>/meta', views.ModelSetting.ModelMeta.as_view()),
]

View File

@ -210,3 +210,21 @@ class ModelSetting(APIView):
def put(self, request: Request, workspace_id: str, model_id: str):
return result.success(
ModelSerializer.Operate(data={'id': model_id}).pause_download())
class Share(APIView):
authentication_classes = [TokenAuth]
@extend_schema(methods=['Get'],
summary=_('Get Share model'),
description=_('Get Share model'),
operation_id=_('Get Share model'), # type: ignore
parameters=GetModelApi.get_query_params_api(),
request=GetModelApi.get_request(),
responses=DefaultModelResponse.get_response(),
tags=[_('Model')]) # type: ignore
@has_permissions(PermissionConstants.MODEL_READ.get_workspace_permission())
def get(self, request: Request, workspace_id: str):
return result.success(
ModelSerializer.Query(
data={**query_params_to_single_dict(request.query_params)}).list(workspace_id='None',
with_valid=True))