1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-04-27 11:01:14 +00:00

fix update records bug (#7747)

This commit is contained in:
JoinTyang 2025-04-19 14:34:02 +08:00 committed by GitHub
parent cb05c2390e
commit 62f31eee77
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 12 additions and 2 deletions

View File

@ -44,7 +44,11 @@ class ServerOperator {
window.sfMetadataContext.modifyRecords(repo_id, recordsData, is_copy_paste).then(res => {
callback({ operation });
}).catch(error => {
if (error.response && error.response.status === 413) {
callback({ error: gettext('Number of records exceeds the limit of 1000') });
} else {
callback({ error: gettext('Failed to modify records') });
}
});
}
break;

View File

@ -21,7 +21,7 @@ from seahub.repo_metadata.utils import add_init_metadata_task, recognize_faces,
from seahub.repo_metadata.metadata_server_api import MetadataServerAPI, list_metadata_view_records
from seahub.utils.repo import is_repo_admin
from seaserv import seafile_api
from seahub.repo_metadata.constants import FACE_RECOGNITION_VIEW_ID
from seahub.repo_metadata.constants import FACE_RECOGNITION_VIEW_ID, METADATA_RECORD_UPDATE_LIMIT
logger = logging.getLogger(__name__)
@ -375,6 +375,10 @@ class MetadataRecords(APIView):
error_msg = 'records_data invalid.'
return api_error(status.HTTP_400_BAD_REQUEST, error_msg)
if len(records_data) > METADATA_RECORD_UPDATE_LIMIT:
error_msg = 'Number of records exceeds the limit of 1000.'
return api_error(status.HTTP_413_REQUEST_ENTITY_TOO_LARGE, error_msg)
metadata = RepoMetadata.objects.filter(repo_id=repo_id).first()
if not metadata or not metadata.enabled:
error_msg = f'The metadata module is disabled for repo {repo_id}.'

View File

@ -1 +1,3 @@
FACE_RECOGNITION_VIEW_ID = '_face_recognition'
METADATA_RECORD_UPDATE_LIMIT = 1000