修复/kb/update
This commit is contained in:
@@ -174,10 +174,26 @@ async def update(
|
||||
return get_data_error_result(
|
||||
message="Duplicated knowledgebase name.")
|
||||
|
||||
# 构建更新数据,包含所有可更新的字段
|
||||
update_data = {
|
||||
"name": name,
|
||||
"pagerank": request.pagerank
|
||||
}
|
||||
|
||||
# 添加可选字段(如果提供了的话)
|
||||
if request.description is not None:
|
||||
update_data["description"] = request.description
|
||||
if request.permission is not None:
|
||||
update_data["permission"] = request.permission
|
||||
if request.avatar is not None:
|
||||
update_data["avatar"] = request.avatar
|
||||
if request.parser_id is not None:
|
||||
update_data["parser_id"] = request.parser_id
|
||||
if request.embd_id is not None:
|
||||
update_data["embd_id"] = request.embd_id
|
||||
if request.parser_config is not None:
|
||||
update_data["parser_config"] = request.parser_config
|
||||
|
||||
if not KnowledgebaseService.update_by_id(kb.id, update_data):
|
||||
return get_data_error_result()
|
||||
|
||||
@@ -195,7 +211,26 @@ async def update(
|
||||
return get_data_error_result(
|
||||
message="Database error (Knowledgebase rename)!")
|
||||
kb = kb.to_dict()
|
||||
kb.update(update_data)
|
||||
|
||||
# 使用完整的请求数据更新返回结果,保持与原来代码的一致性
|
||||
request_data = {
|
||||
"name": name,
|
||||
"pagerank": request.pagerank
|
||||
}
|
||||
if request.description is not None:
|
||||
request_data["description"] = request.description
|
||||
if request.permission is not None:
|
||||
request_data["permission"] = request.permission
|
||||
if request.avatar is not None:
|
||||
request_data["avatar"] = request.avatar
|
||||
if request.parser_id is not None:
|
||||
request_data["parser_id"] = request.parser_id
|
||||
if request.embd_id is not None:
|
||||
request_data["embd_id"] = request.embd_id
|
||||
if request.parser_config is not None:
|
||||
request_data["parser_config"] = request.parser_config
|
||||
|
||||
kb.update(request_data)
|
||||
|
||||
return get_json_result(data=kb)
|
||||
except Exception as e:
|
||||
|
||||
@@ -30,6 +30,12 @@ class UpdateKnowledgeBaseRequest(BaseModel):
|
||||
"""更新知识库请求模型"""
|
||||
kb_id: str = Field(..., description="知识库ID")
|
||||
name: str = Field(..., description="知识库名称")
|
||||
description: Optional[str] = Field(None, description="知识库描述")
|
||||
permission: Optional[str] = Field(None, description="权限设置")
|
||||
avatar: Optional[str] = Field(None, description="头像base64字符串")
|
||||
parser_id: Optional[str] = Field(None, description="解析器ID")
|
||||
embd_id: Optional[str] = Field(None, description="嵌入模型ID")
|
||||
parser_config: Optional[Dict[str, Any]] = Field(None, description="解析器配置")
|
||||
pagerank: Optional[int] = Field(0, description="页面排名")
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user