From e616046a48d8b363e038f2379db8dfe6efd1fa96 Mon Sep 17 00:00:00 2001 From: wxg0103 <727495428@qq.com> Date: Thu, 15 Oct 2026 09:54:27 +0800 Subject: [PATCH] fix: improve model editing logic and handle missing workspace_id gracefully --- apps/models_provider/serializers/model_serializer.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/apps/models_provider/serializers/model_serializer.py b/apps/models_provider/serializers/model_serializer.py index 7b3428a558d..a5b09119255 100644 --- a/apps/models_provider/serializers/model_serializer.py +++ b/apps/models_provider/serializers/model_serializer.py @@ -7,14 +7,11 @@ import uuid_utils.compat as uuid from common.config.embedding_config import ModelManage -from common.constants.cache_version import Cache_Version -from common.constants.resource_permission_constants import ResourceAuthType from common.database_model_manage.database_model_manage import DatabaseModelManage from common.db.search import native_search from common.exception.app_exception import AppApiException from common.utils.common import get_file_content from common.utils.rsa_util import rsa_long_decrypt, rsa_long_encrypt -from django.core.cache import cache from django.db import transaction from django.db.models import QuerySet from django.utils.translation import gettext_lazy as _ @@ -207,9 +204,12 @@ def delete(self, with_valid=True): def edit(self, instance: Dict, user_id: str, with_valid=True): if with_valid: - self.is_valid(raise_exception=True) - model = QuerySet(Model).filter(id=self.data.get("id"), workspace_id=self.data.get("workspace_id")).first() - + super().is_valid(raise_exception=True) + model = ( + QuerySet(Model) + .filter(id=self.data.get("id"), workspace_id=self.data.get("workspace_id", "None")) + .first() + ) credential, model_credential, provider_handler = ModelSerializer.Edit(data={**instance}).is_valid( model=model )