【发布时间】:2020-02-28 10:55:03
【问题描述】:
我正在尝试在模型字段中指定字符长度。我无法让它在页面上呈现并将 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'})
}
和
类 QuestionForm(ModelForm): question = forms.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',))
【问题讨论】:
-
如何在模板中显示此字段?你实际上看到了什么?还显示视图的其余部分;我看不出这两个表单集是如何相互关联的。
-
谢谢,我已经找到了解决方案,我会发布它作为答案。
标签: django django-forms django-model-field