Update metadata_service.py (#23271)

This commit is contained in:
XiaoXiaoJiangYun 2025-08-02 12:14:43 +08:00 • committed by GitHub
commit 46ba0a8781
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -79,6 +79,9 @@ class MetadataService:
document_ids = [binding.document_id for binding in dataset_metadata_bindings] document_ids = [binding.document_id for binding in dataset_metadata_bindings]
documents = DocumentService.get_document_by_ids(document_ids) documents = DocumentService.get_document_by_ids(document_ids)
for document in documents: for document in documents:
if not document.doc_metadata:
doc_metadata = {}
else:
doc_metadata = copy.deepcopy(document.doc_metadata) doc_metadata = copy.deepcopy(document.doc_metadata)
value = doc_metadata.pop(old_name, None) value = doc_metadata.pop(old_name, None)
doc_metadata[name] = value doc_metadata[name] = value
@ -109,6 +112,9 @@ class MetadataService:
document_ids = [binding.document_id for binding in dataset_metadata_bindings] document_ids = [binding.document_id for binding in dataset_metadata_bindings]
documents = DocumentService.get_document_by_ids(document_ids) documents = DocumentService.get_document_by_ids(document_ids)
for document in documents: for document in documents:
if not document.doc_metadata:
doc_metadata = {}
else:
doc_metadata = copy.deepcopy(document.doc_metadata) doc_metadata = copy.deepcopy(document.doc_metadata)
doc_metadata.pop(metadata.name, None) doc_metadata.pop(metadata.name, None)
document.doc_metadata = doc_metadata document.doc_metadata = doc_metadata
@ -172,6 +178,9 @@ class MetadataService:
document_ids = [] document_ids = []
if documents: if documents:
for document in documents: for document in documents:
if not document.doc_metadata:
doc_metadata = {}
else:
doc_metadata = copy.deepcopy(document.doc_metadata) doc_metadata = copy.deepcopy(document.doc_metadata)
doc_metadata.pop(BuiltInField.document_name.value, None) doc_metadata.pop(BuiltInField.document_name.value, None)
doc_metadata.pop(BuiltInField.uploader.value, None) doc_metadata.pop(BuiltInField.uploader.value, None)