django-bulk-hooks 0.1.140__tar.gz → 0.1.142__tar.gz
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-0.1.140 → django_bulk_hooks-0.1.142}/PKG-INFO +1 -1
- {django_bulk_hooks-0.1.140 → django_bulk_hooks-0.1.142}/django_bulk_hooks/queryset.py +17 -2
- {django_bulk_hooks-0.1.140 → django_bulk_hooks-0.1.142}/pyproject.toml +1 -1
- {django_bulk_hooks-0.1.140 → django_bulk_hooks-0.1.142}/LICENSE +0 -0
- {django_bulk_hooks-0.1.140 → django_bulk_hooks-0.1.142}/README.md +0 -0
- {django_bulk_hooks-0.1.140 → django_bulk_hooks-0.1.142}/django_bulk_hooks/__init__.py +0 -0
- {django_bulk_hooks-0.1.140 → django_bulk_hooks-0.1.142}/django_bulk_hooks/conditions.py +0 -0
- {django_bulk_hooks-0.1.140 → django_bulk_hooks-0.1.142}/django_bulk_hooks/constants.py +0 -0
- {django_bulk_hooks-0.1.140 → django_bulk_hooks-0.1.142}/django_bulk_hooks/context.py +0 -0
- {django_bulk_hooks-0.1.140 → django_bulk_hooks-0.1.142}/django_bulk_hooks/decorators.py +0 -0
- {django_bulk_hooks-0.1.140 → django_bulk_hooks-0.1.142}/django_bulk_hooks/engine.py +0 -0
- {django_bulk_hooks-0.1.140 → django_bulk_hooks-0.1.142}/django_bulk_hooks/enums.py +0 -0
- {django_bulk_hooks-0.1.140 → django_bulk_hooks-0.1.142}/django_bulk_hooks/handler.py +0 -0
- {django_bulk_hooks-0.1.140 → django_bulk_hooks-0.1.142}/django_bulk_hooks/manager.py +0 -0
- {django_bulk_hooks-0.1.140 → django_bulk_hooks-0.1.142}/django_bulk_hooks/models.py +0 -0
- {django_bulk_hooks-0.1.140 → django_bulk_hooks-0.1.142}/django_bulk_hooks/priority.py +0 -0
- {django_bulk_hooks-0.1.140 → django_bulk_hooks-0.1.142}/django_bulk_hooks/registry.py +0 -0
|
@@ -393,11 +393,24 @@ class HookQuerySet(models.QuerySet):
|
|
|
393
393
|
|
|
394
394
|
# Use Django's internal _batched_insert method
|
|
395
395
|
opts = child_model._meta
|
|
396
|
-
# For child models in MTI, we
|
|
397
|
-
#
|
|
396
|
+
# For child models in MTI, we need to include the foreign key to the parent
|
|
397
|
+
# but exclude the primary key since it's inherited
|
|
398
|
+
print(f"DEBUG: All local fields: {[f.name for f in opts.local_fields]}")
|
|
398
399
|
fields = [f for f in opts.local_fields if not f.generated and not f.primary_key]
|
|
399
400
|
print(f"DEBUG: Child model fields to insert: {[f.name for f in fields]}")
|
|
400
401
|
|
|
402
|
+
# Debug: Check what fields are actually set on the child objects
|
|
403
|
+
for i, child_obj in enumerate(all_child_objects[:3]): # Check first 3 objects
|
|
404
|
+
print(f"DEBUG: Child object {i} fields: {[f.name for f in child_model._meta.local_fields if hasattr(child_obj, f.name) and getattr(child_obj, f.name) is not None]}")
|
|
405
|
+
# Debug: Check the actual values
|
|
406
|
+
for field in child_model._meta.local_fields:
|
|
407
|
+
if hasattr(child_obj, field.name) and getattr(child_obj, field.name) is not None:
|
|
408
|
+
value = getattr(child_obj, field.name)
|
|
409
|
+
if hasattr(value, 'pk'):
|
|
410
|
+
print(f"DEBUG: Child object {i} {field.name} = {value} (PK: {value.pk})")
|
|
411
|
+
else:
|
|
412
|
+
print(f"DEBUG: Child object {i} {field.name} = {value}")
|
|
413
|
+
|
|
401
414
|
# Debug: Check what fields are actually set on the child objects
|
|
402
415
|
for i, child_obj in enumerate(all_child_objects[:3]): # Check first 3 objects
|
|
403
416
|
print(f"DEBUG: Child object {i} fields: {[f.name for f in child_model._meta.local_fields if hasattr(child_obj, f.name) and getattr(child_obj, f.name) is not None]}")
|
|
@@ -494,7 +507,9 @@ class HookQuerySet(models.QuerySet):
|
|
|
494
507
|
for parent_model, parent_instance in parent_instances.items():
|
|
495
508
|
parent_link = child_model._meta.get_ancestor_link(parent_model)
|
|
496
509
|
if parent_link:
|
|
510
|
+
# Set the foreign key to the parent instance (Django will handle the ID)
|
|
497
511
|
setattr(child_obj, parent_link.name, parent_instance)
|
|
512
|
+
print(f"DEBUG: Set {parent_link.name} to {parent_instance} (PK: {parent_instance.pk})")
|
|
498
513
|
|
|
499
514
|
# Handle auto_now_add and auto_now fields like Django does
|
|
500
515
|
for field in child_model._meta.local_fields:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "django-bulk-hooks"
|
|
3
|
-
version = "0.1.
|
|
3
|
+
version = "0.1.142"
|
|
4
4
|
description = "Hook-style hooks for Django bulk operations like bulk_create and bulk_update."
|
|
5
5
|
authors = ["Konrad Beck <konrad.beck@merchantcapital.co.za>"]
|
|
6
6
|
readme = "README.md"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|