2014-09-29 61 views
3

在默认管理界面中,组页面不是很全面。 (附图片)我看不到那些属于该群组的用户,并且我无法从那里添加任何用户(我必须转到用户的个人资料,并将他们逐个添加到群组中)Django管理界面:扩展'组'页面显示其用户并允许添加新用户

我试图从admin.py扩展此功能,但不知道如何去做。如果auth_groupauth_userauth_user_groupsmodels.py被用户定义的模型,我可能会做这样的事情:

from django.contrib import admin 
from myproject.models import Group, User, GroupUserMembership 

class MembershipInline(admin.TabularInline): 
    model = GroupUserMembership 
    extra = 1 

class UserAdmin(admin.ModelAdmin): 
    inlines = (MembershipInline,) 

class GroupAdmin(admin.ModelAdmin): 
    inlines = (MembershipInline,) 

admin.site.register(Group, GroupAdmin) 
admin.site.register(User, UserAdmin) 

但是,这会导致

Exception Value: The model Group is already registered

(也不知我如何进口auth_user_groups

TL; DR如何扩展Django Admi n显示默认验证模型UserGroups之间的多对多关系的接口? (如下面图片中Permissions

Django default Admin Interface for groups

回答

1

您必须首先注册自己之前注销默认的用户(型号名称)模式管理。

试试这个

admin.site.unregister(User) 
admin.site.register(User, UserAdmin)