2009-07-03 22 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的回答