refac
This commit is contained in:
@@ -168,6 +168,27 @@ async def process_uploaded_file(
|
||||
db=db_session,
|
||||
)
|
||||
|
||||
# Auto-link to Knowledge Collection when uploaded from one (#24807).
|
||||
# Mirrors POST /knowledge/{id}/file/add so linking doesn't depend
|
||||
# on the frontend staying connected after upload.
|
||||
knowledge_id = file_metadata.get('knowledge_id')
|
||||
if knowledge_id:
|
||||
try:
|
||||
await Knowledges.add_file_to_knowledge_by_id(
|
||||
knowledge_id=knowledge_id,
|
||||
file_id=file_item.id,
|
||||
user_id=user.id,
|
||||
directory_id=file_metadata.get('directory_id'),
|
||||
)
|
||||
await process_file(
|
||||
request,
|
||||
ProcessFileForm(file_id=file_item.id, collection_name=knowledge_id),
|
||||
user=user,
|
||||
)
|
||||
log.info(f'Linked file {file_item.id} to knowledge {knowledge_id}')
|
||||
except Exception as e:
|
||||
log.warning(f'Failed to link file {file_item.id} to knowledge {knowledge_id}: {e}')
|
||||
|
||||
except Exception as e:
|
||||
log.error(f'Error processing file: {file_item.id}')
|
||||
await Files.update_file_data_by_id(
|
||||
|
||||
Reference in New Issue
Block a user