[Fixed]-Removing the Label From Django's TextArea Widget


The Django documentation on customizing labels says it could be turned off with auto_id argument to Form constructor:

f = ContactForm(auto_id=False)


This should work with the latest version (trunk) of django:

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

Hope that helps!


Try this in your form:

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

But for newer versions of django i prefer Iemonad’s answer


Not sure about old Django but u can now empty the form field labels in Meta for the new Django

class CustomForm(forms.Form):
    class Meta:
        ...  #other properties such as model, fields, widgets and help text
        labels = {
           'comment' : '',


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.



here is another solution that had worked for me
with this

{% for field in form %} {{field.errors}} {% endfor %}

Leave a comment