From a8c03bfb5b1e0a0cc3fe0491dd5757031d520af3 Mon Sep 17 00:00:00 2001 From: jyong <718720800@qq.com> Date: Wed, 12 Mar 2025 19:01:20 +0800 Subject: [PATCH] fix metadata name exist in built-in field --- api/services/metadata_service.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/api/services/metadata_service.py b/api/services/metadata_service.py index 3074392b8f..2e758df63f 100644 --- a/api/services/metadata_service.py +++ b/api/services/metadata_service.py @@ -22,6 +22,9 @@ class MetadataService: # check if metadata name already exists if DatasetMetadata.query.filter_by(tenant_id=current_user.current_tenant_id, dataset_id=dataset_id, name=metadata_args.name).first(): raise ValueError("Metadata name already exists.") + for field in BuiltInField: + if field.value == metadata_args.name: + raise ValueError("Metadata name already exists in Built-in fields.") metadata = DatasetMetadata( tenant_id=current_user.current_tenant_id, dataset_id=dataset_id, @@ -39,6 +42,9 @@ class MetadataService: # check if metadata name already exists if DatasetMetadata.query.filter_by(tenant_id=current_user.current_tenant_id, dataset_id=dataset_id, name=name).first(): raise ValueError("Metadata name already exists.") + for field in BuiltInField: + if field.value == name: + raise ValueError("Metadata name already exists in Built-in fields.") try: MetadataService.knowledge_base_metadata_lock_check(dataset_id, None) metadata = DatasetMetadata.query.filter_by(id=metadata_id).first()