django-bulk-hooks 0.1.194__tar.gz → 0.1.196__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.

Files changed (17) hide show
  1. {django_bulk_hooks-0.1.194 → django_bulk_hooks-0.1.196}/PKG-INFO +1 -1
  2. {django_bulk_hooks-0.1.194 → django_bulk_hooks-0.1.196}/django_bulk_hooks/queryset.py +8 -5
  3. {django_bulk_hooks-0.1.194 → django_bulk_hooks-0.1.196}/pyproject.toml +1 -1
  4. {django_bulk_hooks-0.1.194 → django_bulk_hooks-0.1.196}/LICENSE +0 -0
  5. {django_bulk_hooks-0.1.194 → django_bulk_hooks-0.1.196}/README.md +0 -0
  6. {django_bulk_hooks-0.1.194 → django_bulk_hooks-0.1.196}/django_bulk_hooks/__init__.py +0 -0
  7. {django_bulk_hooks-0.1.194 → django_bulk_hooks-0.1.196}/django_bulk_hooks/conditions.py +0 -0
  8. {django_bulk_hooks-0.1.194 → django_bulk_hooks-0.1.196}/django_bulk_hooks/constants.py +0 -0
  9. {django_bulk_hooks-0.1.194 → django_bulk_hooks-0.1.196}/django_bulk_hooks/context.py +0 -0
  10. {django_bulk_hooks-0.1.194 → django_bulk_hooks-0.1.196}/django_bulk_hooks/decorators.py +0 -0
  11. {django_bulk_hooks-0.1.194 → django_bulk_hooks-0.1.196}/django_bulk_hooks/engine.py +0 -0
  12. {django_bulk_hooks-0.1.194 → django_bulk_hooks-0.1.196}/django_bulk_hooks/enums.py +0 -0
  13. {django_bulk_hooks-0.1.194 → django_bulk_hooks-0.1.196}/django_bulk_hooks/handler.py +0 -0
  14. {django_bulk_hooks-0.1.194 → django_bulk_hooks-0.1.196}/django_bulk_hooks/manager.py +0 -0
  15. {django_bulk_hooks-0.1.194 → django_bulk_hooks-0.1.196}/django_bulk_hooks/models.py +0 -0
  16. {django_bulk_hooks-0.1.194 → django_bulk_hooks-0.1.196}/django_bulk_hooks/priority.py +0 -0
  17. {django_bulk_hooks-0.1.194 → django_bulk_hooks-0.1.196}/django_bulk_hooks/registry.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: django-bulk-hooks
3
- Version: 0.1.194
3
+ Version: 0.1.196
4
4
  Summary: Hook-style hooks for Django bulk operations like bulk_create and bulk_update.
5
5
  License: MIT
6
6
  Keywords: django,bulk,hooks
@@ -230,8 +230,9 @@ class HookQuerySetMixin:
230
230
  fields_set = set(fields)
231
231
  pk_fields = model_cls._meta.pk_fields
232
232
  for field in model_cls._meta.local_concrete_fields:
233
- # Only add auto_now and auto_now_add fields that aren't already in the fields list
234
- if (hasattr(field, "auto_now") and field.auto_now) or (hasattr(field, "auto_now_add") and field.auto_now_add):
233
+ # Only add auto_now fields (like updated_at) that aren't already in the fields list
234
+ # Don't include auto_now_add fields (like created_at) as they should only be set on creation
235
+ if hasattr(field, "auto_now") and field.auto_now:
235
236
  if field.name not in fields_set and field.name not in pk_fields:
236
237
  fields_set.add(field.name)
237
238
  if field.name != field.attname:
@@ -570,10 +571,12 @@ class HookQuerySetMixin:
570
571
  )
571
572
 
572
573
  # Handle auto_now fields by calling pre_save on objects
574
+ # Check all models in the inheritance chain for auto_now fields
573
575
  for obj in objs:
574
- for field in model_cls._meta.local_fields:
575
- if hasattr(field, "auto_now") and field.auto_now:
576
- field.pre_save(obj, add=False)
576
+ for model in inheritance_chain:
577
+ for field in model._meta.local_fields:
578
+ if hasattr(field, "auto_now") and field.auto_now:
579
+ field.pre_save(obj, add=False)
577
580
 
578
581
  # Group fields by model in the inheritance chain
579
582
  field_groups = {}
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "django-bulk-hooks"
3
- version = "0.1.194"
3
+ version = "0.1.196"
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"