我正在尝试指定模型字段的字符长度。我无法将其呈现在页面上并将size属性放入输入字段。
基本形式如下:
class QuestionForm(ModelForm):
question = forms.CharField(label="Question")
class Meta:
model = Question
fields = ["question"]
我尝试过以下几种:
class QuestionForm(ModelForm):
question = forms.CharField(label="Question",widgets=forms.TextInput(attrs={'size':'50'}))
class Meta:
model = Question
fields = ["question"]
和
class QuestionForm(ModelForm):
question = forms.CharField(label="Question")
class Meta:
model = Question
fields = ["question"]
widgets = {
'question': forms.TextInput(attrs={'size':'50'})
}
和
课堂调查表(ModelForm(:问题=表格。CharField(label="Question"(
def __init__(self, *args, **kwargs):
super(QuestionForm,self).__init__(*args, **kwargs)
self.fields['question'].widget.attrs['size'] = '50'
表单是表单集工厂的一部分,在使用时需要做任何不同的操作吗?
ApplicationForm = forms.formset_factory(QuestionForm)
ModelApplicationForm = forms.modelformset_factory(Question, fields=('question',))
问题是因为在使用modelformset_factory时,我传递的是问题模型而不是表单,所以它根本没有使用表单类。我设法找到了将小部件传递给modelformset_factory的解决方案。
ModelApplicationForm = forms.modelformset_factory(Question, fields=('question',),widgets={"question": forms.TextInput(attrs={'size':'50'})})