これはかなり特殊な要求ですがpage
、URL にパラメーターがない場合 (つまり、フロントページにいる場合) は、管理ビューをリダイレクトできます。
from django.shortcuts import redirect
from django.core.urlresolvers import reverse
class MyAdmin(admin.ModelAdmin):
...
def changelist_view(self, request, extra_context=None):
if not request.GET.get("p", False):
return redirect("%s?p=%s" % (
reverse("admin:my_app__model__changeview"),
self.paginator.page_range[-1])
super(MyAdmin, self).changelist_view(request, extra_context=extra_context)
別の方法としてp
、制御を親メソッドに渡す前に URL パラメータをリクエストに挿入することもできますchangelist_view
(ただし、これにはリクエストをコピーする必要があります)。編集:Wouterのソリューションは実際には素晴らしくシンプルです