diff options
| author | Claude Paroz <claude@2xlibre.net> | 2016-10-01 19:32:32 +0200 |
|---|---|---|
| committer | Claude Paroz <claude@2xlibre.net> | 2016-10-01 20:16:41 +0200 |
| commit | 062b8ba37e616a70d131dcec5f3a760d8d1ceb2c (patch) | |
| tree | 224bd09ca0aefb7afab35d0bf5ad45566d2d6873 /django/contrib/admin/options.py | |
| parent | 63d9ffe0d6bd13a3abe73884166ab4fac897987f (diff) | |
[1.10.x] Fixed #27302 -- Fixed ModelAdmin.construct_change_message() changed field detection
Thanks Ramiro Morales for the report and Tim Graham for the review.
Backport of 67eee5e4fa08f4404445ebf4f54b686e68a8530c from master.
Diffstat (limited to 'django/contrib/admin/options.py')
| -rw-r--r-- | django/contrib/admin/options.py | 48 |
1 files changed, 24 insertions, 24 deletions
diff --git a/django/contrib/admin/options.py b/django/contrib/admin/options.py index eaf6452707..569bf3b057 100644 --- a/django/contrib/admin/options.py +++ b/django/contrib/admin/options.py @@ -929,7 +929,6 @@ class ModelAdmin(BaseModelAdmin): return urlencode({'_changelist_filters': preserved_filters}) return '' - @translation_override(None) def construct_change_message(self, request, form, formsets, add=False): """ Construct a JSON structure describing changes from a changed object. @@ -943,29 +942,30 @@ class ModelAdmin(BaseModelAdmin): change_message.append({'changed': {'fields': form.changed_data}}) if formsets: - for formset in formsets: - for added_object in formset.new_objects: - change_message.append({ - 'added': { - 'name': force_text(added_object._meta.verbose_name), - 'object': force_text(added_object), - } - }) - for changed_object, changed_fields in formset.changed_objects: - change_message.append({ - 'changed': { - 'name': force_text(changed_object._meta.verbose_name), - 'object': force_text(changed_object), - 'fields': changed_fields, - } - }) - for deleted_object in formset.deleted_objects: - change_message.append({ - 'deleted': { - 'name': force_text(deleted_object._meta.verbose_name), - 'object': force_text(deleted_object), - } - }) + with translation_override(None): + for formset in formsets: + for added_object in formset.new_objects: + change_message.append({ + 'added': { + 'name': force_text(added_object._meta.verbose_name), + 'object': force_text(added_object), + } + }) + for changed_object, changed_fields in formset.changed_objects: + change_message.append({ + 'changed': { + 'name': force_text(changed_object._meta.verbose_name), + 'object': force_text(changed_object), + 'fields': changed_fields, + } + }) + for deleted_object in formset.deleted_objects: + change_message.append({ + 'deleted': { + 'name': force_text(deleted_object._meta.verbose_name), + 'object': force_text(deleted_object), + } + }) return change_message def message_user(self, request, message, level=messages.INFO, extra_tags='', |
