是否有用于使用内联 through_model 添加多个外键的 django 管理小部件

Is there a django admin widget for adding multiple foreign keys with an inline through_model

我有一个基本的多对多关系:

Song to Playlist with PlaylistMember 作为直通模型

现在我使用作为 TabularInline 子类的内联视图在播放列表详细信息视图中显示歌曲:

class PlaylistMemberInline(TabularInline):
    model = PlaylistMember
    raw_id_fields = ('Sound',)


class PlaylistAdmin(TranslatableAdmin):
    ...
    inlines = [PlaylistMemberInline]

要添加多种声音,我必须单击 "Add another Sound",然后在弹出窗口中找到该声音。这对我来说很烦人,因为我可以找到我想要添加的所有声音,但必须单击其中一个并返回 "Add another Sound"。

有没有我可以搜索的小部件,select然后添加多个对象?

Django 源代码 (1.8 branch here, line 254) 建议您可以将外键添加到 radio_fields 或 raw_id_fields,从而产生不同的小部件。

在这种情况下,将字段名称"Sound"添加到PlaylistMemberInline.raw_id_fields, 考虑将其添加到 PlaylistMemberInline.radio_fields.