2013-05-07 58 views
0

我试图做一个叫做文本的字段,它是一个像文本字段一样的CharField工作,因为我不能在窗体中使用textfield所以我做的是我使用CSS放大charfield 。问题是,当我输入一个句子时。句子不像文本框一样从上到下显示,而是像直线一样显示在框的中间。如何使这个Charfield工作您准确像文本框Django在窗体中显示CharField为TextField错误

enter image description here 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',) 

我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; 
} 
+3

你不能用一个textarea控件? 'text = forms.CharField(widget = forms.Textarea)' – 2013-05-07 11:21:07

+0

@limelights,oh man。你的正确。我在这个问题游泳周围的答案http://stackoverflow.com/questions/430592/django-admin-charfield-as-textarea,但我认为这是指定管理模板 – donkeyboy72 2013-05-07 11:24:52

回答

3

为您的使用情况下使用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. 
     } 

这里的documentation

+0

感谢您的帮助 – donkeyboy72 2013-05-07 11:29:16

+0

Np,很高兴我可以帮助,如果它帮助你不要忘记接受,更多代表我和你! :) – 2013-05-07 11:29:54

+0

哈哈,好吧1分钟,我可以接受 – donkeyboy72 2013-05-07 11:31:56