2009-07-03 25 views
7

如何删除附加到TextArea的标签我正在尝试使用Django?我试图找到关于这个问题的任何信息,但我似乎无法找到与我的问题有关的任何信息。这是我在我的代码正在做:从Django的TextArea小部件中删除标签

class CommentForm(forms.Form): 
    comment = forms.CharField(widget=forms.Textarea()) 

这是它产生的HTML:

<label for="id_text">Text:</label> 
<textarea id="id_text" rows="10" cols="40" name="text"></textarea> 

这个标签是没有好,我想办法将其删除。该代码所产生经由:

{{ form.as_p }} 

(I除去段落标签,因为它们是不相关的)

编辑:我添加用于进一步澄清类CommentForm一部分。

任何人有任何建议吗?

回答

23

这应该使用Django的最新版本(主干)工作:

comment = forms.CharField(label="", help_text="", widget=forms.Textarea()) 

希望帮助!

+0

不幸的是,我使用Django 1.0.2,我想这不会发生工作然而。 – AlbertoPL 2009-07-03 20:40:30

+0

这很奇怪。它不应该是一个Django 1.1功能(我不能轻易验证它是否可以在Django 1.0.2中使用)。 – lemonad 2009-07-03 21:22:56

0

快速和肮脏的解决办法是通过表单manualy迭代(与{%为外地在形式上% })并专门处理“有问题”的字段。如果需要,您也可以重写as_p/as_table方法。

0

在表单试试这个:

def __init__(self, *args, **kwargs): 
    self.fields['comment'].label = '' 

但Django的较新版本的我喜欢Iemonad的回答