From aebad0ae5d7ee34b8387326bcaa43adc921c6c82 Mon Sep 17 00:00:00 2001 From: Wenjie Zhang Date: Thu, 24 Apr 2025 22:55:10 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=B7=BB=E5=8A=A0=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E6=97=B6=EF=BC=8C=E5=89=8D=E5=90=8E=E7=AB=AF=E7=9A=84?= =?UTF-8?q?=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server/routers/data_router.py | 12 ++++++++---- web/src/views/GraphView.vue | 9 +++++++-- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/server/routers/data_router.py b/server/routers/data_router.py index 1f4e92fb..699ed968 100644 --- a/server/routers/data_router.py +++ b/server/routers/data_router.py @@ -171,11 +171,15 @@ async def get_graph_nodes(kgdb_name: str, num: int): @data.post("/graph/add-by-jsonl") async def add_graph_entity(file_path: str = Body(...), kgdb_name: Optional[str] = Body(None)): if not config.enable_knowledge_graph: - raise HTTPException(status_code=400, detail="Knowledge graph is not enabled") + return {"message": "知识图谱未启用", "status": "failed"} if not file_path.endswith('.jsonl'): - raise HTTPException(status_code=400, detail="file_path must be a jsonl file") + return {"message": "文件格式错误,请上传jsonl文件", "status": "failed"} - await graph_base.jsonl_file_add_entity(file_path, kgdb_name) - return {"message": "Entity successfully added"} + try: + await graph_base.jsonl_file_add_entity(file_path, kgdb_name) + return {"message": "实体添加成功", "status": "success"} + except Exception as e: + logger.error(f"添加实体失败: {e}, {traceback.format_exc()}") + return {"message": f"添加实体失败: {e}", "status": "failed"} diff --git a/web/src/views/GraphView.vue b/web/src/views/GraphView.vue index b8fdecb4..08f84e44 100644 --- a/web/src/views/GraphView.vue +++ b/web/src/views/GraphView.vue @@ -198,10 +198,15 @@ const addDocumentByFile = () => { }) .then(response => response.json()) .then((data) => { - message.success(data.message); - state.showModal = false; + if (data.status === 'success') { + message.success(data.message); + state.showModal = false; + } else { + throw new Error(data.message); + } }) .catch((error) => { + console.error(error) message.error(error.message); }) .finally(() => state.precessing = false)