English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Creación de vistas en Django

La función de vista, o abreviadamente "view", es una función Python simple que acepta una solicitud web y devuelve una respuesta web. Esta respuesta puede ser el contenido HTML de una página web, o una redirección, o404errores, o documentos XML, o imágenes/páginas, por ejemplo: usar vistas para crear páginas, ten en cuenta que se debe asociar una vista a una URL y considerarla como una página web.
En Django, las vistas deben crearse en el archivo views.py de la aplicación.

Vista simple

Vamos a crear una vista simple en myapp para mostrar: "welcome to w3codebox !"

Ver la vista siguiente −

# Nombre de archivo : example.py
# Derechos de autor : 2020 Por w3codebox
# Autor por: es.oldtoolbag.com
# Fecha : 2020-08-08
from django.http import HttpResponse
 def hello(request):
    text = """<h1>welcome to w3codebox !</h1">"""
    return HttpResponse(text)

En esta vista, utilizamos HttpResponse para presentar HTML (tal vez ya lo hayas notado, hemos codificado HTML en la vista). En esta vista, solo necesitamos mapearlo a una página de URL (esto se discutirá en el próximo capítulo).

Usamos HttpResponse antes de renderizar el HTML de la vista. Esto no es la mejor manera de renderizar una página web. Django admite el modelo MVT, que primero renderiza las vistas. - MVT es lo que necesitamos−

Un archivo de plantilla: myapp/plantillas/hello.html

Ahora, el contenido de nuestra vista es el siguiente −

# Nombre de archivo : example.py
# Derechos de autor : 2020 Por w3codebox
# Autor por: es.oldtoolbag.com
# Fecha : 2020-08-08
from django.shortcuts import render
 def hello(request):
    return render(request, "myapp/plantilla/hello.html", {})

Parámetros que pueden aceptar las vistas -

# Nombre de archivo : example.py
# Derechos de autor : 2020 Por w3codebox
# Autor por: es.oldtoolbag.com
# Fecha : 2020-08-08
from django.http import HttpResponse
 def hello(request, number):
    text = "<h1>Bienvenido a mi aplicación número %s!/h1>"% number
    return HttpResponse(text)

Cuando se enlaza a una dirección web, la página muestra el valor pasado como parámetro. Note que los parámetros se transmitirán a través de la URL (que se discutirá en el siguiente capítulo).