Django多选小部件?
Djangopipe理站点使用一个非常酷的小部件:
我如何在我自己的应用程序中使用这个小部件? 我没有看到这里列出的任何东西。
从文档 :
Django Admin应用程序为日历定义了一些定制的窗口小部件,过滤的select等等。 这些小部件定义了媒体需求,Django Admin使用自定义小部件来代替Django默认值。 pipe理员模板将只包含在任何给定页面上呈现窗口小部件所需的媒体文件。
如果您喜欢Django Admin应用程序使用的小部件,请随意在自己的应用程序中使用它们! 他们都存储在django.contrib.admin.widgets。
在这种情况下,您需要FilteredSelectMultiple
小部件。 要使用它,在窗体字段上应用小部件,如下所示:
my_field = forms.ModelMultipleChoiceField(queryset=MyModel.objects.all(), widget=FilteredSelectMultiple("verbose name", is_stacked=False))
确保在模板中包含表单media
,因为它需要包含几个JS文件。