django-bulk-hooks 0.2.54__py3-none-any.whl → 0.2.55__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of django-bulk-hooks might be problematic. Click here for more details.
- django_bulk_hooks/operations/mti_handler.py +7 -0
- {django_bulk_hooks-0.2.54.dist-info → django_bulk_hooks-0.2.55.dist-info}/METADATA +1 -1
- {django_bulk_hooks-0.2.54.dist-info → django_bulk_hooks-0.2.55.dist-info}/RECORD +5 -5
- {django_bulk_hooks-0.2.54.dist-info → django_bulk_hooks-0.2.55.dist-info}/LICENSE +0 -0
- {django_bulk_hooks-0.2.54.dist-info → django_bulk_hooks-0.2.55.dist-info}/WHEEL +0 -0
|
@@ -361,6 +361,13 @@ class MTIHandler:
|
|
|
361
361
|
|
|
362
362
|
# Copy field values from source using centralized field extraction
|
|
363
363
|
for field in parent_model._meta.local_fields:
|
|
364
|
+
# Skip AutoField (primary key) - let Django's bulk_create with update_conflicts
|
|
365
|
+
# handle PK assignment based on unique_fields. Setting PKs manually here causes
|
|
366
|
+
# conflicts when parent records exist but update_conflicts isn't properly configured
|
|
367
|
+
# for this level, leading to IntegrityError on primary key constraint.
|
|
368
|
+
if isinstance(field, AutoField):
|
|
369
|
+
continue
|
|
370
|
+
|
|
364
371
|
if hasattr(source_obj, field.name):
|
|
365
372
|
# Use centralized field value extraction for consistent FK handling
|
|
366
373
|
value = get_field_value_for_db(source_obj, field.name, source_obj.__class__)
|
|
@@ -16,12 +16,12 @@ django_bulk_hooks/operations/analyzer.py,sha256=wAG8sAG9NwfwNqG9z81VfGR7AANDzRmM
|
|
|
16
16
|
django_bulk_hooks/operations/bulk_executor.py,sha256=tMbcwQSN8xNoKL7-KC8m-XhGyqwaAtAQ5CAm3PYHl_Q,24122
|
|
17
17
|
django_bulk_hooks/operations/coordinator.py,sha256=iGavJLqe3eYRqFay8cMn6muwyRYzQo-HFGphsS5hL6g,30799
|
|
18
18
|
django_bulk_hooks/operations/field_utils.py,sha256=Tvr5bcZLG8imH-r2S85oui1Cbw6hGv3VtuIMn4OvsU4,2895
|
|
19
|
-
django_bulk_hooks/operations/mti_handler.py,sha256=
|
|
19
|
+
django_bulk_hooks/operations/mti_handler.py,sha256=ZR4Bps0lPdT9syrk-AMdqsxFN34QRJVqH1peR_E4h0s,21550
|
|
20
20
|
django_bulk_hooks/operations/mti_plans.py,sha256=7STQ2oA2ZT8cEG3-t-6xciRAdf7OeSf0gRLXR_BRG-Q,3363
|
|
21
21
|
django_bulk_hooks/operations/record_classifier.py,sha256=kqML4aO11X9K3SSJ5DUlUukwI172j_Tk12Kr77ee8q8,7065
|
|
22
22
|
django_bulk_hooks/queryset.py,sha256=aQitlbexcVnmeAdc0jtO3hci39p4QEu4srQPEzozy5s,5546
|
|
23
23
|
django_bulk_hooks/registry.py,sha256=uum5jhGI3TPaoiXuA1MdBdu4gbE3rQGGwQ5YDjiMcjk,7949
|
|
24
|
-
django_bulk_hooks-0.2.
|
|
25
|
-
django_bulk_hooks-0.2.
|
|
26
|
-
django_bulk_hooks-0.2.
|
|
27
|
-
django_bulk_hooks-0.2.
|
|
24
|
+
django_bulk_hooks-0.2.55.dist-info/LICENSE,sha256=dguKIcbDGeZD-vXWdLyErPUALYOvtX_fO4Zjhq481uk,1088
|
|
25
|
+
django_bulk_hooks-0.2.55.dist-info/METADATA,sha256=2goa-ou7_Q77g-z_GnbCWyhV5Tp7WUhiQFbURMBTOX0,9265
|
|
26
|
+
django_bulk_hooks-0.2.55.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
|
|
27
|
+
django_bulk_hooks-0.2.55.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|