我正在尝试创建一个名为text的字段,这是一个像文本字段一样的CharField工作,因为我不能在表单中使用textfield所以我做的是我放大了charfield 使用CSS。问题是,当我输入一个句子。句子不是像文本字段那样从上到下显示,而是在框中间显示为直线。如何让这个Charfield像textfield一样工作?
models.py
class House(models.Model):
user = models.ForeignKey(User)
name = models.CharField(max_length=100)
description = models.Textfield(max_length=100)
我的forms.py
class HouseForm(forms.ModelForm):
text = forms.CharField(required=False, )
class Meta:
model = House
fields = ('name', 'description',)
my views.py
def House(request):
form = houseForm()
return render(request,'house.html',{'form':form})
模板
<form method="POST" enctype="multipart/form-data">
{% csrf_token %}
{{form.name}}
{{form.text}}
{{form.description}}
<input type = "submit" value="save" id="box2"/>
</form>
我的CSS
#id_text {
width: 230px;
height: 80px;
color:#9B5A3C;
font-family: Arial;
font-size: 15px;
position:absolute;
left:700px;
top: 260px;
}
答案 0 :(得分:4)
对于您的用例,请使用TextArea小部件
text = forms.CharField(widget=forms.Textarea)
如果您想为小部件指定一些属性,您可以在表单中执行此操作,这非常好。
class HouseForm(forms.ModelForm):
class Meta:
model = House
widgets = {
'text': forms.Textarea(attrs={'rows':5, 'cols':10}), #this is changeble.
}