django-bulk-hooks 0.1.180__py3-none-any.whl → 0.1.181__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/queryset.py +7 -9
- {django_bulk_hooks-0.1.180.dist-info → django_bulk_hooks-0.1.181.dist-info}/METADATA +1 -1
- {django_bulk_hooks-0.1.180.dist-info → django_bulk_hooks-0.1.181.dist-info}/RECORD +5 -5
- {django_bulk_hooks-0.1.180.dist-info → django_bulk_hooks-0.1.181.dist-info}/LICENSE +0 -0
- {django_bulk_hooks-0.1.180.dist-info → django_bulk_hooks-0.1.181.dist-info}/WHEEL +0 -0
django_bulk_hooks/queryset.py
CHANGED
|
@@ -17,8 +17,6 @@ from django_bulk_hooks.context import HookContext
|
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
class HookQuerySet(models.QuerySet):
|
|
20
|
-
CHUNK_SIZE = 200
|
|
21
|
-
|
|
22
20
|
@transaction.atomic
|
|
23
21
|
def delete(self):
|
|
24
22
|
objs = list(self)
|
|
@@ -537,7 +535,7 @@ class HookQuerySet(models.QuerySet):
|
|
|
537
535
|
"""
|
|
538
536
|
model_cls = self.model
|
|
539
537
|
inheritance_chain = self._get_inheritance_chain()
|
|
540
|
-
|
|
538
|
+
|
|
541
539
|
# Group fields by model in the inheritance chain
|
|
542
540
|
field_groups = {}
|
|
543
541
|
for field_name in fields:
|
|
@@ -549,31 +547,31 @@ class HookQuerySet(models.QuerySet):
|
|
|
549
547
|
field_groups[model] = []
|
|
550
548
|
field_groups[model].append(field_name)
|
|
551
549
|
break
|
|
552
|
-
|
|
550
|
+
|
|
553
551
|
# Update each table in the inheritance chain
|
|
554
552
|
total_updated = 0
|
|
555
553
|
for model, model_fields in field_groups.items():
|
|
556
554
|
if not model_fields:
|
|
557
555
|
continue
|
|
558
|
-
|
|
556
|
+
|
|
559
557
|
# Get objects that have this model's fields
|
|
560
558
|
model_objs = []
|
|
561
559
|
for obj in objs:
|
|
562
560
|
# Create a temporary object with just this model's fields
|
|
563
561
|
temp_obj = model()
|
|
564
562
|
temp_obj.pk = obj.pk # Set the primary key
|
|
565
|
-
|
|
563
|
+
|
|
566
564
|
# Copy only the fields for this model
|
|
567
565
|
for field_name in model_fields:
|
|
568
566
|
if hasattr(obj, field_name):
|
|
569
567
|
setattr(temp_obj, field_name, getattr(obj, field_name))
|
|
570
|
-
|
|
568
|
+
|
|
571
569
|
model_objs.append(temp_obj)
|
|
572
|
-
|
|
570
|
+
|
|
573
571
|
# Use Django's bulk_update for this model's table
|
|
574
572
|
# This will automatically use batch_size from kwargs
|
|
575
573
|
base_qs = model._base_manager.using(self.db)
|
|
576
574
|
updated_count = base_qs.bulk_update(model_objs, model_fields, **kwargs)
|
|
577
575
|
total_updated += updated_count
|
|
578
|
-
|
|
576
|
+
|
|
579
577
|
return total_updated
|
|
@@ -9,9 +9,9 @@ django_bulk_hooks/handler.py,sha256=xZt8iNdYF-ACz-MnKMY0co6scWINU5V5wC1lyDn844k,
|
|
|
9
9
|
django_bulk_hooks/manager.py,sha256=KLEjpQRt4WlzgBAf_X3XOAPUQM8Jmc1fIt8yr62FPQc,3044
|
|
10
10
|
django_bulk_hooks/models.py,sha256=7fnx5xd4HWXfLVlFhhiRzR92JRWFEuxgk6aSWLEsyJg,3996
|
|
11
11
|
django_bulk_hooks/priority.py,sha256=HG_2D35nga68lBCZmSXTcplXrjFoRgZFRDOy4ROKonY,376
|
|
12
|
-
django_bulk_hooks/queryset.py,sha256=
|
|
12
|
+
django_bulk_hooks/queryset.py,sha256=VRTivPjxF51uAPAOJ-Ytchg7NDl9EmiEWIBMOQ00Bos,24359
|
|
13
13
|
django_bulk_hooks/registry.py,sha256=-mQBizJ06nz_tajZBinViKx_uP2Tbc1tIpTEMv7lwKA,705
|
|
14
|
-
django_bulk_hooks-0.1.
|
|
15
|
-
django_bulk_hooks-0.1.
|
|
16
|
-
django_bulk_hooks-0.1.
|
|
17
|
-
django_bulk_hooks-0.1.
|
|
14
|
+
django_bulk_hooks-0.1.181.dist-info/LICENSE,sha256=dguKIcbDGeZD-vXWdLyErPUALYOvtX_fO4Zjhq481uk,1088
|
|
15
|
+
django_bulk_hooks-0.1.181.dist-info/METADATA,sha256=P_xiN8oxEXO0ryUGTnvH6S5ias0FldD9UAEQBgY27G4,6951
|
|
16
|
+
django_bulk_hooks-0.1.181.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
|
|
17
|
+
django_bulk_hooks-0.1.181.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|