用户管理员 - 将组添加到 list_display
在Django中,用户管理员可以使用list_display
设置来指定要显示的模型字段。在这种情况下,我们可以使用Group
模型,该模型存储了用户分组信息。
要添加组到list_display
,我们需要先创建一个Group
模型,然后将其与用户模型进行关联,最后将分组显示在用户管理列表中。
以下是一个示例代码:
# models.py
from django.db import models
class Group(models.Model):
name = models.CharField(max_length=255)
def __str__(self):
return self.name
class User(models.Model):
name = models.CharField(max_length=255)
group = models.ForeignKey(Group, on_delete=models.CASCADE)
def __str__(self):
return self.name
# admin.py
from django.contrib import admin
from .models import User
admin.site.register(User)
在上面的代码中,我们创建了一个Group
模型和一个User
模型。User
模型有一个group
字段,它是一个ForeignKey
,指向Group
模型。在admin.py
文件中,我们将User
模型注册到Django admin site中,以便在用户管理页面中显示分组信息。
接下来,我们需要修改list_display
设置来显示分组信息。在admin.py
文件中,我们可以使用以下代码:
# admin.py
from django.contrib import admin
from .models import User
admin.site.register(User)
class UserAdmin(admin.ModelAdmin):
list_display = ('name', 'group')
admin.site.register(UserAdmin)
在上面的代码中,我们创建了一个名为UserAdmin
的定制模型管理器,它继承自admin.ModelAdmin
。我们将list_display
设置中的字段更改为显示name
和group
字段。
最后,我们将UserAdmin
注册到Django admin site中,以便在用户管理页面中使用分组信息。
现在,当您登录到Django admin site并查看用户管理列表时,您将看到一个名为“Groups”的列,该列显示了每个用户的所属分组。您可以通过单击分组名称来查看该分组中的所有用户。
领取专属 10元无门槛券
手把手带您无忧上云