Skip to content

Commit dc35e54

Browse files
committed
Use ModelAdmin.opts for correct reverse in admin
Make sure to use ModelAdmin.opts in admin.py in order to get the correct app_label and model_name. This is important when a subclass (e.g. of Newsletter) is used
1 parent 57ac58d commit dc35e54

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

newsletter/admin.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -168,16 +168,17 @@ def submit(self, request, object_id):
168168
if submission.sent or submission.prepared:
169169
messages.info(request, _("Submission already sent."))
170170
change_url = reverse(
171-
'admin:newsletter_submission_change', args=[object_id]
171+
'admin:%s_%s_change' % (self.opts.app_label, self.opts.model_name), args=[object_id]
172172
)
173+
173174
return HttpResponseRedirect(change_url)
174175

175176
submission.prepared = True
176177
submission.save()
177178

178179
messages.info(request, _("Your submission is being sent."))
179180

180-
changelist_url = reverse('admin:newsletter_submission_changelist')
181+
changelist_url = reverse('admin:%s_%s_changelist' % (self.opts.app_label, self.opts.model_name))
181182
return HttpResponseRedirect(changelist_url)
182183

183184
""" URLs """
@@ -439,7 +440,7 @@ def subscribers_import(self, request):
439440
form.cleaned_data['newsletter'].pk
440441

441442
confirm_url = reverse(
442-
'admin:newsletter_subscription_import_confirm'
443+
'admin:%s_%s_import_confirm' % (self.opts.app_label, self.opts.model_name)
443444
)
444445
return HttpResponseRedirect(confirm_url)
445446
else:
@@ -453,9 +454,8 @@ def subscribers_import(self, request):
453454

454455
def subscribers_import_confirm(self, request):
455456
# If no addresses are in the session, start all over.
456-
457457
if 'addresses' not in request.session:
458-
import_url = reverse('admin:newsletter_subscription_import')
458+
import_url = reverse('admin:%s_%s_import' % (self.opts.app_label, self.opts.model_name))
459459
return HttpResponseRedirect(import_url)
460460

461461
addresses = request.session['addresses']
@@ -488,7 +488,7 @@ def subscribers_import_confirm(self, request):
488488
)
489489

490490
changelist_url = reverse(
491-
'admin:newsletter_subscription_changelist'
491+
'admin:%s_%s_changelist' % (self.opts.app_label, self.opts.model_name)
492492
)
493493
return HttpResponseRedirect(changelist_url)
494494
else:

0 commit comments

Comments
 (0)