How do I remove the label that comes attached to the TextArea I am trying to use with Django? I'm trying to find ANY information about this issue but I cannot seem to find anything relating to my problem. This is what I'm doing in my code:
class CommentForm(forms.Form):
comment = forms.CharField(widget=forms.Textarea())
This is the HTML that it produces:
<label for="id_text">Text:</label>
<textarea id="id_text" rows="10" cols="40" name="text"></textarea>
That label is no good and I'd like a way to remove it. That code was produced via:
{{ form.as_p }}
(I removed the paragraph tags because they are irrelevant)
EDIT: I added the class CommentForm part for further clarification.
Anyone have any suggestions?
-
This should work with the latest version (trunk) of django:
comment = forms.CharField(label="", help_text="", widget=forms.Textarea())
Hope that helps!
AlbertoPL : Unfortunately I'm using Django 1.0.2, and I guess this doesn't happen to work yet.lemonad : That's weird. It should not be a Django 1.1 feature (I just couldn't easily verify that it works in Django 1.0.2). -
The Django documentation on customizing labels says it could be turned off with
auto_id
argument to Form constructor:f = ContactForm(auto_id=False)
AlbertoPL : nvm my previous comment, I deleted it, however this still does nothing for me, am I possibly initializing it in the wrong spot? I'm doing it in the view before the page is rendered.Grzegorz Oledzki : I am not really sure but I guess you could put it like this: class CommentForm(forms.Form): auto_id = False comment = forms.CharField(widget=forms.Textarea())AlbertoPL : Ok, it looks like this SHOULD be the way to do it, however I'm getting no change. I'll update the question with more results.Grzegorz Oledzki : So, did it work?AlbertoPL : It did. The label is gone. However, the text part of the label was really what I wanted to remove. Nevertheless, this is the correct answer to my stated question. -
A quick-and-dirty solution would be to iterate through the form manualy (with {% for field in form %}) and handle the "problematic" field specially. You could also override the as_p/as_table methods if needed.
0 comments:
Post a Comment