wagtail cms:如何按上次登录对用户进行排序

问题描述 投票:0回答:1

我(和我的客户)想按上次登录对后端(菜单>设置>用户)中的用户进行排序。默认情况下,我只能按名称和用户名排序。解决这个问题的最佳做法是什么?同样在版本 5 中我没有找到这个功能。

django wagtail wagtail-admin
1个回答
0
投票

您可以查看用户索引视图https://github.com/wagtail/wagtail/blob/main/wagtail/users/views/users.py#L67。然后你可以快速而肮脏地做到这一点:

子类化(某处):

from wagtail.users.views.users import Index

class UserIndex(Index):
    def get_queryset(self):
        qs = super().get_queryset()
        qs = qs.order_by("-last_login")  # most recent users first
        return qs

猴子修补相关的 urlpatterns https://github.com/wagtail/wagtail/blob/main/wagtail/users/urls/users.py

from django.urls import path
from wagtail.users.urls.users import urlpatterns
from some.path import UserIndex

urlpatterns[0] = path("", UserIndex.as_view(), name="index")

AFAIK,wagtail 没有提供一种简单的方法来配置或调整其管理视图,如常见的 django 管理。不过,您可以轻松添加新的。

© www.soinside.com 2019 - 2024. All rights reserved.