【问题标题】:Django raw_id_fields widget not showing search iconDjango raw_id_fields 小部件不显示搜索图标
【发布时间】:2013-05-10 13:35:20
【问题描述】:

我的 admin.py 中有以下代码:

class UserManagedGroupAdmin(admin.ModelAdmin):
    inlines = [MembershipInline]
    search_fields = ('name', 'leader__username', )
    list_display = ('__unicode__', 'leader', )
    filter_horizontal = ('permissions', )
    raw_id_fields = ('leader', )

admin.site.register(UserManagedGroup, UserManagedGroupAdmin)

用于搜索的放大镜图标未出现在管理页面中。

这就是我得到的:

如您所见,它显示的是模型的 unicode 方法,而不是我想要的搜索图标。

字段'leader'ForeignKeyUser

可能是 django 出于安全原因禁用了对 ForeignKeysUser 的搜索,还是我做错了什么?

该小部件非常适合选择用户...我的意思是,我不能为我网站的每个用户留下大量选择。

谢谢。

【问题讨论】:

    标签: django django-admin


    【解决方案1】:

    感谢 django-users 中的this message,我发现了问题。

    我必须在管理员中注册ForeignKey 指向的模型。

    没有它,搜索就无法工作。

    【讨论】:

    • 谢谢,这对我有用。只是为了澄清问题中给出的示例。提问者没有在管理员中注册User,因此管理员无法识别它。其表现是望远镜图标不显示。
    【解决方案2】:

    您好,遇到同样的问题,但原因有点不同。

    将用户和用户组与另一个应用的管理员集成(例如some_app

    我将下面的代码添加到some_app/admin.py

    class ProxyUser(User):
        class Meta:
            proxy = True
            verbose_name = User._meta.verbose_name
            verbose_name_plural = User._meta.verbose_name_plural
    
    
    class ProxyGroup(Group):
        class Meta:
            proxy = True
            verbose_name = Group._meta.verbose_name
            verbose_name_plural = Group._meta.verbose_name_plural
    
    admin.site.unregister(Group)
    admin.site.unregister(User)
    admin.site.register(ProxyGroup)
    admin.site.register(ProxyUser, UserAdmin)
    

    我认为unregister(...) 会在全球范围内影响其他应用的管理员!

    这是缺少搜索图标的另一个原因。

    【讨论】:

    • 如果我处于这种情况,但我希望选择器仍然为我显示?因为我确实注册了一个管理员,它是 Django User 类加上我自定义的 UserProfile 类的组合管理员。
    • 我将为UserProfile 注册一个单独的管理员并尝试隐藏它。
    【解决方案3】:

    admin.py文件中添加:

    admin.site.register(YourModel)
    

    这成功了,YourModel 是用放大镜显示的模型

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-26
      • 2021-11-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多