From c09bceef68e5abb79accedd12dade16aa6577a09 Mon Sep 17 00:00:00 2001 From: antoliny0919 Date: Fri, 28 Feb 2025 20:17:17 +0900 Subject: Fixed #36217 -- Restored pre_save/post_save signal emission via LogEntry.save() for single-object deletion in the admin. Regression in 40b3975e7d3e1464a733c69171ad7d38f8814280. Thanks smiling-watermelon for the report. Co-authored-by: Sarah Boyce <42296566+sarahboyce@users.noreply.github.com> --- django/contrib/admin/models.py | 6 ++---- django/contrib/admin/options.py | 2 -- 2 files changed, 2 insertions(+), 6 deletions(-) (limited to 'django') diff --git a/django/contrib/admin/models.py b/django/contrib/admin/models.py index 5723ebff7f..453e65cf01 100644 --- a/django/contrib/admin/models.py +++ b/django/contrib/admin/models.py @@ -24,9 +24,7 @@ ACTION_FLAG_CHOICES = [ class LogEntryManager(models.Manager): use_in_migrations = True - def log_actions( - self, user_id, queryset, action_flag, change_message="", *, single_object=False - ): + def log_actions(self, user_id, queryset, action_flag, change_message=""): if isinstance(change_message, list): change_message = json.dumps(change_message) @@ -44,7 +42,7 @@ class LogEntryManager(models.Manager): for obj in queryset ] - if single_object and log_entry_list: + if len(log_entry_list) == 1: instance = log_entry_list[0] instance.save() return instance diff --git a/django/contrib/admin/options.py b/django/contrib/admin/options.py index 3c2cf9d130..090b12151a 100644 --- a/django/contrib/admin/options.py +++ b/django/contrib/admin/options.py @@ -946,7 +946,6 @@ class ModelAdmin(BaseModelAdmin): queryset=[obj], action_flag=ADDITION, change_message=message, - single_object=True, ) def log_change(self, request, obj, message): @@ -962,7 +961,6 @@ class ModelAdmin(BaseModelAdmin): queryset=[obj], action_flag=CHANGE, change_message=message, - single_object=True, ) def log_deletions(self, request, queryset): -- cgit v1.3