如何在Django中将多个ModelAdmin附加到UserAdmin?

时间:2014-03-28 18:55:13

标签: django django-models django-admin django-users

我的search modelForeignKey的关联User

class Searches(models.Model):
    user = models.ForeignKey(User)
    ......

我的UserProfile模型与OnetoOneUser的关系

class UserProfile(models.Model):
    user = models.OneToOneField(User)
    photo = models.ImageField(upload_to='profile_images', blank=True)
    ispublic=models.NullBooleanField()

我已将UserProfile附加在admin.py中,如下所示:

class UserProfileInline(admin.StackedInline):
    model = UserProfile
    can_delete = False

class UserProfileAdmin(UserAdmin):

    inlines=(UserProfileInline, )
    list_filter = UserAdmin.list_filter + ('email',)
    list_display=('username','email','first_name','last_name','isPublic')


admin.site.unregister(get_user_model())
admin.site.register(get_user_model(), UserProfileAdmin)

现在我没有看到单独的UserProfile,但已整合到User中,这就是我想要的。

我还想让Search模型显示在User admin中。但也分开。 如何注册两个(或更多)AdminsUser模型?

1 个答案:

答案 0 :(得分:1)

尝试在Inline内添加另一个UserProfileAdmin,然后将UserProfileInlineSearchesInline放入UserProfileAdmin,然后放admin.site.register(Searches)admin.py中。除非我误解了这个问题。