【问题标题】:How do you annotate Django admin's filter_horizontal with associated filed of the M2M field?您如何使用 M2M 字段的关联字段注释 Django admin filter_horizo​​ntal?
【发布时间】:2017-08-13 15:19:35
【问题描述】:

你如何注释 Django 管理员的 filter_horizo​​ntal?这是在多选中输入有关条目的其他字段的信息。例如,

class A(models.Model):
    aa = models.CharField()
    bb - models.ManyToManyField('self')

class AAdmin(admin.ModelAdmin):
    filter_horizontal = ['bb']

所以 bb 将显示在多选中,但您如何同时显示关联的 aa 字段和 bb 字段? filter_horizo​​ntal 不接受 aa 作为参数。

【问题讨论】:

    标签: python django django-models django-admin


    【解决方案1】:

    您的字段 aa 根本没有在 modelAdmin 中注册。

    (1) 使用 django 的 @admin.register 注释将您的 modelAdmin 注册到您的模型及其所有合法字段。

    @admin.register(A)
    class AAdmin(admin.ModelAdmin):
            filter_horizontal = ['bb']
    

    (2) 或将 fieldsets attr 添加到您声明必须显示的字段的 modelAdmin 中。

    class AAdmin(admin.ModelAdmin):
        fieldsets = (
            (None, {'fields': ('aa', 'bb',)}),
        )
        filter_horizontal = ['bb']
    

    【讨论】:

      猜你喜欢
      • 2019-08-15
      • 2015-09-08
      • 2019-07-18
      • 1970-01-01
      • 1970-01-01
      • 2023-01-27
      • 2014-01-02
      • 2015-09-29
      • 1970-01-01
      相关资源
      最近更新 更多