Django es un marco de desarrollo web de alto nivel, escrito en Python, que promueve un desarrollo rápido y limpio con un diseño pragmático. Una de las características más poderosas de Django es el sistema de plantillas. El sistema de plantillas de Django es una forma de separar HTML del código Python, lo que facilita ver lo que sucede y simplifica el diseño de la página.

Para comenzar con las plantillas de Django, necesita comprender cómo Django encuentra y carga plantillas. De forma predeterminada, Django busca plantillas en un directorio llamado 'plantillas' en cada aplicación instalada. Entonces, si tienes una aplicación llamada 'blog', Django buscará plantillas en el directorio 'blog/templates'.

Para usar una plantilla en una vista, primero necesita cargar la plantilla usando la función 'get_template()' del módulo 'django.template.loader'. Esta función toma el nombre de la plantilla como argumento y devuelve un objeto de plantilla. Luego puedes llamar al método 'render()' de este objeto de plantilla, pasándole un contexto. El contexto es un diccionario que asigna nombres de variables a sus valores.

Por ejemplo, si tiene una plantilla llamada 'blog/post_detail.html', puede cargar y representar esta plantilla de esta manera:


desde django.template.loader importar get_template
desde django.http importar HttpResponse

def post_detail(solicitud, post_id):
    publicación = get_object_or_404(Publicación, pk=post_id)
    plantilla = get_template('blog/post_detail.html')
    contexto = {'publicación': publicación}
    devolver HttpResponse(template.render(contexto, solicitud))

Este código carga la plantilla 'blog/post_detail.html', crea un contexto que contiene la publicación que queremos mostrar y luego representa la plantilla con ese contexto. El resultado es una cadena de HTML que luego se envía como respuesta HTTP.

Las plantillas de Django utilizan su propio lenguaje, llamado lenguaje de plantillas de Django. Este lenguaje incluye etiquetas, que son instrucciones especiales que puedes usar para agregar lógica a tu HTML. Por ejemplo, la etiqueta 'if' le permite agregar condiciones a su plantilla. Puede utilizar la etiqueta 'if' para mostrar contenido diferente según el valor de una variable.

Además de las etiquetas, el lenguaje de plantillas de Django también incluye filtros, que son funciones que puedes aplicar a las variables. Por ejemplo, el filtro 'fecha' le permite formatear fechas y horas. Puedes utilizar el filtro 'fecha' para mostrar la fecha de publicación de una publicación en el formato que desees.

Los formularios son otra parte crucial del desarrollo web con Django. Django viene con una potente biblioteca de formularios que facilita la representación de formularios HTML y la validación de datos de formularios. Para crear un formulario con Django, define una clase que hereda de 'django.forms.Form' y define los campos del formulario como atributos de la clase. Cada campo es una instancia de una clase de campo, como 'CharField' para campos de texto o 'IntegerField' para números enteros.

Por ejemplo, para crear un formulario de comentarios, podría definir la siguiente clase:


desde formularios de importación de Django

formulario de comentario de clase (formularios.formulario):
    nombre = formularios.CharField(max_length=100)
    comentario = formularios.CharField(widget=formularios.Textarea)

Esta clase define un formulario con dos campos, 'nombre' y 'comentario'. El campo 'nombre' es un campo de texto que acepta hasta 100 caracteres. El campo 'comentario' es un área de texto, como lo indica el widget 'Textarea'.

Para representar este formulario en una plantilla, simplemente puede pasarlo al contexto y usarlo en una etiqueta HTML de 'formulario'. Django se encargará de representar los campos y generar las etiquetas HTML de 'entrada' apropiadas.

Por ejemplo, podrías representar el formulario de comentarios así:


<método de formulario="publicación">
    {{ comentario_form.as_p }}
    <tipo de entrada="enviar" valor="Enviar">
</formulario>

Este código representa el formulario de comentarios como una serie de párrafos, cada uno de los cuales contiene un campo de formulario. El método 'as_p' del objeto de formulario genera el HTML para cada campo, incluidas las etiquetas 'label' y 'input' y cualquier mensaje de error.

En resumen, Django proporciona una poderosa infraestructura para manejar plantillas y formularios, lo que facilita la creación de aplicaciones web sólidas y fáciles de mantener.

Ahora responde el ejercicio sobre el contenido:

¿Cuál es el papel del sistema de plantillas de Django?

¡Tienes razón! Felicitaciones, ahora pasa a la página siguiente.

¡Tú error! Inténtalo de nuevo.

Imagen del artículo Formularios en Django: Formularios en Django 123

Siguiente página del libro electrónico gratuito:

Formularios en Django: Formularios en Django

Tiempo estimado de lectura: 3 minutos

Descarga la aplicación para obtener una certificación gratuita y escuchar cursos en segundo plano, incluso con la pantalla apagada.

+ 9 millones
estudiantes

Certificado gratuito y
válido con código QR

60 mil ejercicios
gratis

Calificación de 4.8/5
en tiendas de aplicaciones

Cursos gratuitos de
vídeo y audiolibros