summaryrefslogtreecommitdiff
path: root/django
diff options
context:
space:
mode:
authorKarl Hobley <karlhobley10@gmail.com>2015-03-16 21:55:44 +0000
committerTim Graham <timograham@gmail.com>2015-03-20 18:25:06 -0400
commitaea02ddfb7c610db9a7cb291b113d6e561d8eba9 (patch)
treec14c443387345ccf346360f169b143120ba67264 /django
parenta3e75f6bede9eab2933295780d8643509cea09f1 (diff)
Fixed #24490 -- Set LogEntry.change_message when adding an object.
Diffstat (limited to 'django')
-rw-r--r--django/contrib/admin/options.py19
1 files changed, 11 insertions, 8 deletions
diff --git a/django/contrib/admin/options.py b/django/contrib/admin/options.py
index 873ca08fa7..24ba84c7bd 100644
--- a/django/contrib/admin/options.py
+++ b/django/contrib/admin/options.py
@@ -696,7 +696,7 @@ class ModelAdmin(BaseModelAdmin):
def get_paginator(self, request, queryset, per_page, orphans=0, allow_empty_first_page=True):
return self.paginator(queryset, per_page, orphans, allow_empty_first_page)
- def log_addition(self, request, object):
+ def log_addition(self, request, object, message):
"""
Log that an object has been successfully added.
@@ -708,7 +708,8 @@ class ModelAdmin(BaseModelAdmin):
content_type_id=get_content_type_for_model(object).pk,
object_id=object.pk,
object_repr=force_text(object),
- action_flag=ADDITION
+ action_flag=ADDITION,
+ change_message=message,
)
def log_change(self, request, object, message):
@@ -724,7 +725,7 @@ class ModelAdmin(BaseModelAdmin):
object_id=object.pk,
object_repr=force_text(object),
action_flag=CHANGE,
- change_message=message
+ change_message=message,
)
def log_deletion(self, request, object, object_repr):
@@ -740,7 +741,7 @@ class ModelAdmin(BaseModelAdmin):
content_type_id=get_content_type_for_model(object).pk,
object_id=object.pk,
object_repr=object_repr,
- action_flag=DELETION
+ action_flag=DELETION,
)
def action_checkbox(self, obj):
@@ -920,12 +921,14 @@ class ModelAdmin(BaseModelAdmin):
return urlencode({'_changelist_filters': preserved_filters})
return ''
- def construct_change_message(self, request, form, formsets):
+ def construct_change_message(self, request, form, formsets, add=False):
"""
Construct a change message from a changed object.
"""
change_message = []
- if form.changed_data:
+ if add:
+ change_message.append(_('Added.'))
+ elif form.changed_data:
change_message.append(_('Changed %s.') % get_text_list(form.changed_data, _('and')))
if formsets:
@@ -1373,11 +1376,11 @@ class ModelAdmin(BaseModelAdmin):
if all_valid(formsets) and form_validated:
self.save_model(request, new_object, form, not add)
self.save_related(request, form, formsets, not add)
+ change_message = self.construct_change_message(request, form, formsets, add)
if add:
- self.log_addition(request, new_object)
+ self.log_addition(request, new_object, change_message)
return self.response_add(request, new_object)
else:
- change_message = self.construct_change_message(request, form, formsets)
self.log_change(request, new_object, change_message)
return self.response_change(request, new_object)
else: