2009-07-03 16 views
7

Djangoで使用しようとしているTextAreaに添付されているラベルを削除するにはどうすればよいですか?私はこの問題に関する情報を見つけようとしていますが、私の問題に関連するものは見つけられません。これは私が私のコードでやっているものです:DjangoのTextAreaウィジェットからラベルを削除する

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

そのラベルが良くないと、私はそれを削除する方法が欲しい:

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

これは、それが生成するHTMLがあります。

EDIT(これらは無関係であるので、私は段落タグを除去)

{{ form.as_p }} 

:そのコードを介して製造された私はさらに明確にするためにクラスCommentForm部を添加しました。

誰もが何か提案がありますか?

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

希望に役立ちます:

答えて

8

Django documentation on customizing labelsコンストラクタを型にauto_id引数でオフにすることができたと言う。

f = ContactForm(auto_id=False) 
+0

nvm私の前のコメント、私はそれを削除しましたが、これはまだ私のために何もしません、私はおそらく間違った場所で初期化ですか?私は、ページがレンダリングされる前にビューでそれをやっています。 – AlbertoPL

+0

私は本当にわからないが、私はあなたがこのようにそれを置くことができると思います:[OK]を、それが見えます –

+0

auto_id = Falseの コメント= forms.CharField(ウィジェット= forms.Textarea()): クラスCommentForm(forms.Form)このようにしなければならないのですが、私は変わりがありません。質問をより多くの結果で更新します。 – AlbertoPL

23

これはジャンゴの最新バージョン(トランク)で動作するはずです!

+0

を好みますまだ。 – AlbertoPL

+0

それは変です。これはDjango 1.1の機能ではないはずです(私はDjango 1.0.2で動作することを簡単に確認できませんでした)。 – lemonad

+0

0

汚いクイック・アンド・ソリューションフォーム%でフィールドの{%の(フォームてmanualyを反復することであろう})、問題のあるフィールドを特別に扱います。必要に応じて、as_p/as_tableメソッドをオーバーライドすることもできます。

0

フォームでこれを試してみてください:

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

しかし、ジャンゴの新しいバージョンの私は残念ながら、私はDjangoの1.0.2を使用している、と私はこれが仕事に起こらないと思いIemonadの答え

関連する問題