ModelForm 内の ManyToManyField は、デフォルトの forms.MultipleChoiceField の代わりに forms.MultipleHiddenInput ウィジェットを使用できますか? 以下の例では、'groups' はモデル 'Test' の ManyToManyField です。
class TestSelectionForm(forms.ModelForm):
class Meta:
model = Test
fields = ('groups')
widgets = {
'groups': forms.MultipleHiddenInput()
}
def __init__(self, *args, **kwargs):
super(TestSelectionForm, self).__init__(*args, **kwargs)
self.fields['groups'].queryset = Group.objects.filter(...)
ただし、このフォームの非表示の入力フィールドは表示されませんでした。私は何か不足していますか、それとも MultipleHiddenInput を ManyToManyField と一緒に使用することはできませんか? (その後、テンプレート内の非表示の入力用に HTML を記述する必要がありますか、それとも ModelForm 内から使用できる別のアプローチがありますか?)