From: shamoon <4887959+shamoon@users.noreply.github.com> Date: Tue, 7 May 2024 21:26:07 +0000 (-0700) Subject: Fix: allow bulk edit with existing fields (#6625) X-Git-Tag: v2.8.2~4 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=caec0ed4d1a17bb2ea6fdee5249a05d03f3fb21e;p=thirdparty%2Fpaperless-ngx.git Fix: allow bulk edit with existing fields (#6625) --- diff --git a/src/documents/bulk_edit.py b/src/documents/bulk_edit.py index 4c3e78322d..08965bb158 100644 --- a/src/documents/bulk_edit.py +++ b/src/documents/bulk_edit.py @@ -140,16 +140,12 @@ def modify_custom_fields(doc_ids: list[int], add_custom_fields, remove_custom_fi qs = Document.objects.filter(id__in=doc_ids).only("pk") affected_docs = list(qs.values_list("pk", flat=True)) - fields_to_add = [] for field in add_custom_fields: for doc_id in affected_docs: - fields_to_add.append( - CustomFieldInstance( - document_id=doc_id, - field_id=field, - ), + CustomFieldInstance.objects.update_or_create( + document_id=doc_id, + field_id=field, ) - CustomFieldInstance.objects.bulk_create(fields_to_add) CustomFieldInstance.objects.filter( document_id__in=affected_docs, field_id__in=remove_custom_fields,