5
私のModelForm内では、モデル上のものに直接バインドされていないドロップダウンを作成しました。それゆえ、私はインスタンシエーション時にそれのためにクエリーセットを渡します。forms.ModelChoiceFieldに属性を定義する方法?
class CallsForm(ModelForm):
def __init__(self, company, *args, **kwargs):
super(CallsForm, self).__init__(*args, **kwargs)
self.fields['test_1'].queryset = company.deal_set.all()
test_1 = forms.ModelChoiceField(queryset = '')
これはうまくいきます。しかし、どのように私はそれのためのいくつかの属性を指定するのですか?
私は通常、メタでこれを行う他のモデルバインド・ウィジェットの場合:
class Meta:
model = Conversation
widgets = {
'notes': forms.Textarea(attrs={'class': 'red'}),
}
しかし、私の場合、それをオーバーライドすることは意味をなさないでしょう。
インスタンス化時に属性を設定しようとしました。
test_1 = forms.ModelChoiceField(attrs={'class':'hidden'}, queryset = '')
が、それは言う:__init__() got an unexpected keyword argument 'attrs'
確かに方法がなければならない...