Al remover la etiqueta De Widget TextArea de Django
Pregunta
¿Cómo se quita la etiqueta que viene unida a la TextArea Estoy tratando de utilizar con Django? Estoy tratando de encontrar ninguna información sobre este tema, pero me parece que no puede encontrar nada relacionado con mi problema. Esto es lo que estoy haciendo en mi código:
class CommentForm(forms.Form):
comment = forms.CharField(widget=forms.Textarea())
Este es el código HTML que se produce:
<label for="id_text">Text:</label>
<textarea id="id_text" rows="10" cols="40" name="text"></textarea>
Esa etiqueta no es buena y me gustaría una manera de quitarlo. Ese código se produce a través de:
{{ form.as_p }}
(He quitado las etiquetas de párrafo, ya que son irrelevantes)
EDIT: añadí la parte CommentForm clase para una mayor clarificación
.Alguien tiene alguna sugerencia?
Solución
El href="http://docs.djangoproject.com/en/dev/ref/forms/api/#ref-forms-api-configuring-label" rel="noreferrer"> documentación dice que podría ser apagado con el argumento auto_id
al constructor del formulario:
f = ContactForm(auto_id=False)
Otros consejos
Esto debería funcionar con la versión más reciente (tronco) de Django:
comment = forms.CharField(label="", help_text="", widget=forms.Textarea())
Espero que ayude!
Trate esto en su formulario:
def __init__(self, *args, **kwargs):
self.fields['comment'].label = ''
Pero hay nuevas versiones de Django prefiero la respuesta de Iemonad
Una solución rápida y sucia-sería iterar a través de la forma manualy (con {% para el campo en forma de%}) y manejar el campo "problemática" especialmente. También podría anular los métodos / as_table as_p si es necesario.