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'
가 확실히있는 방법이 있어야합니다 ...