mirror of
https://github.com/django/django.git
synced 2025-06-05 03:29:12 +00:00
[2.1.x] Added ModelAdmin._response_post_save() to avoid code duplication.
Backport of 57f16655cd5031ef04bf5e310c9e1d31eff912ce from master
This commit is contained in:
parent
f5fbff0b4e
commit
91d281c021
@ -1322,11 +1322,7 @@ class ModelAdmin(BaseModelAdmin):
|
|||||||
self.message_user(request, msg, messages.SUCCESS)
|
self.message_user(request, msg, messages.SUCCESS)
|
||||||
return self.response_post_save_change(request, obj)
|
return self.response_post_save_change(request, obj)
|
||||||
|
|
||||||
def response_post_save_add(self, request, obj):
|
def _response_post_save(self, request, obj):
|
||||||
"""
|
|
||||||
Figure out where to redirect after the 'Save' button has been pressed
|
|
||||||
when adding a new object.
|
|
||||||
"""
|
|
||||||
opts = self.model._meta
|
opts = self.model._meta
|
||||||
if self.has_change_permission(request, None):
|
if self.has_change_permission(request, None):
|
||||||
post_url = reverse('admin:%s_%s_changelist' %
|
post_url = reverse('admin:%s_%s_changelist' %
|
||||||
@ -1339,23 +1335,19 @@ class ModelAdmin(BaseModelAdmin):
|
|||||||
current_app=self.admin_site.name)
|
current_app=self.admin_site.name)
|
||||||
return HttpResponseRedirect(post_url)
|
return HttpResponseRedirect(post_url)
|
||||||
|
|
||||||
|
def response_post_save_add(self, request, obj):
|
||||||
|
"""
|
||||||
|
Figure out where to redirect after the 'Save' button has been pressed
|
||||||
|
when adding a new object.
|
||||||
|
"""
|
||||||
|
return self._response_post_save(request, obj)
|
||||||
|
|
||||||
def response_post_save_change(self, request, obj):
|
def response_post_save_change(self, request, obj):
|
||||||
"""
|
"""
|
||||||
Figure out where to redirect after the 'Save' button has been pressed
|
Figure out where to redirect after the 'Save' button has been pressed
|
||||||
when editing an existing object.
|
when editing an existing object.
|
||||||
"""
|
"""
|
||||||
opts = self.model._meta
|
return self._response_post_save(request, obj)
|
||||||
|
|
||||||
if self.has_change_permission(request, None):
|
|
||||||
post_url = reverse('admin:%s_%s_changelist' %
|
|
||||||
(opts.app_label, opts.model_name),
|
|
||||||
current_app=self.admin_site.name)
|
|
||||||
preserved_filters = self.get_preserved_filters(request)
|
|
||||||
post_url = add_preserved_filters({'preserved_filters': preserved_filters, 'opts': opts}, post_url)
|
|
||||||
else:
|
|
||||||
post_url = reverse('admin:index',
|
|
||||||
current_app=self.admin_site.name)
|
|
||||||
return HttpResponseRedirect(post_url)
|
|
||||||
|
|
||||||
def response_action(self, request, queryset):
|
def response_action(self, request, queryset):
|
||||||
"""
|
"""
|
||||||
|
Loading…
x
Reference in New Issue
Block a user