Django在admin中随机订购用户

时间:2010-09-29 14:55:26

标签: python django-admin customization

我正在尝试创建一个Django管理过滤器,它将获得随机的用户组。在这一点上,我有两个问题:

  1. 将自定义过滤器应用于用户模型,
  2. 显示一组随机用户。
  3. 在#1上,我尝试过使用User.username.random_filter = True,但它返回的是一个AttributeError,指出User没有属性username

    在#2上,我知道我可以使用User.objects.order_by('?')[:50]获得50个随机用户,但我无法弄清楚如何在管理列表中显示此类查询的结果。据我所知,列表是由URL的GET请求生成的,但我没有任何运气订购。

    有什么建议吗?

2 个答案:

答案 0 :(得分:1)

如果我是你(我是),我会停止尝试将此功能与Django管理站点集成。根据经验,您会发现您尝试做的事情比常规视图更容易实现。当然,它不是那么漂亮,但有些东西可以胜过那些漂亮但不起作用的东西,对吗?

答案 1 :(得分:0)

这应该相当容易,只需创建一个ModelAdmin属性的ordering

这样的事情应该做:

class UserAdmin(ModelAdmin):
    ordering = ('?',)