我有Member
模型和Organization
模型,通过PrincipleMembership
模型加入。 PrincipleMembership
包含ForeignKey
和Member
的{{1}}个字段。
我使用行Organization
创建MemberAdmin
,过滤器呈现完美,但点击它会产生list_filter = ['principlemembership__organization__type', ]
例外。
我可以通过覆盖DisallowedModelAdminLookup
来允许ModelAdmin.Lookup_allowed
来修复它,但这是Django中的错误吗?我使用的是Python 3.5.3和Django 1.10。
我尝试在principlemembership__organization__type__exact
上向organization.type
和OrganizationAdmin
添加过滤器,两者都有效。我没有使用多对多加入,因为我在PrincipleMembershipAdmin
上有其他数据,例如PrincipleMembership
和From
日期。我尝试将过滤器明确地设为To
。我已尝试删除admin.ChoicesFieldListFilter
除MemberAdmin
以外的所有内容。我在list_filter = ['principlemembership__organization__type', ]
上的一个简单Char字段上尝试了一个过滤器并得到了同样的错误。
答案 0 :(得分:0)
看起来这是一个错误,已在1.11.3中修复。请参阅此提交中的更改: https://github.com/django/django/commit/834d57b4de80e525195128c88592e0e076708a23
1.11.3 release notes有一个指向ticket的链接。