使用Django管理网站的多项选择字段

时间:2018-12-29 20:38:21

标签: django django-forms django-admin django-admin-filters

我想你们中的大多数人都已经注意到了管理站点的多项选择字段:

enter image description here

我想要与表单中的MultipleChoiceField完全相同的小部件。如何使用该小部件?

1 个答案:

答案 0 :(得分:1)

您可以使用FilteredSelectMultiple,例如将字段写入管理表单

from django import forms
from django.contrib.admin import widgets

class SomeAdminForm(forms.ModelForm):
    some_field = forms.ModelMultipleChoiceField(
        widget=widgets.FilteredSelectMultiple('Field name', False)
        queryset=SomeModel.objects.all()
    )

    class Meta:
        model = YourModel
        fields = ['your_model_fields', 'some_field']

它适用于forms.MultipleChoiceField

Django管理员发挥了所有作用。