我们拥有这些中等规模且不断增长的表格,最有趣的东西总是最新的。目前我们按创作时间排序,所以有趣的东西就在最后。导航时需要2次点击,一次选择模型,另一次选择最后一页。
我当然可以改变顺序,所以最近的东西就在前面,但随着新东西被推到前面,页面的内容会不断变化,这使得对历史的探索更加困难。
所以我想知道是否有办法让它直接进入最后一页?
答案 0 :(得分:0)
这是一个非常特殊的请求,但如果URL中没有page
参数(例如,您位于首页),则可以重定向管理视图。
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
方法之前将changelist_view
URL参数注入请求中(但这需要复制请求)。 修改:Wouter's solution实际上非常简单
答案 1 :(得分:0)
您可以更改change_list
模板(pagination
块)以显示{{page.last}}
https://github.com/django/django/blob/master/django/contrib/admin/templates/admin/change_list.html