Django

Cómo crear vistas de Django?

Cómo crear vistas de Django?
Diferentes tipos de datos de la aplicación Django, como contenido HTML, datos XML, datos JSON, imagen, error 404, etc. se transfieren a la plantilla a través de la vista Django. Cada vista se crea para un propósito específico y se asocia con una plantilla en particular. Los datos de la vista se pueden generar desde el usuario a través del formulario HTML o desde la base de datos o lógica empresarial. Las vistas de Django se pueden crear usando un método de clase Python o función Python. Las vistas basadas en clases contienen muchas funcionalidades en comparación con las vistas basadas en funciones. Para esto, la mayoría de las aplicaciones Django usan vistas basadas en clases para representar los datos de la aplicación Django. Las formas de crear la vista basada en funciones y la vista basada en clases se han explicado en este tutorial.

Requisitos previos:

Antes de practicar los ejemplos de este tutorial, debe completar las siguientes tareas:

  1. Instale Django versión 3+ en Ubuntu 20+ (preferiblemente)
  2. Crea un proyecto de Django
  3. Ejecute el servidor Django para comprobar si el servidor funciona correctamente o no

Configura una aplicación Django:

A. Para crear una aplicación de Django llamada viewapp, ejecute el siguiente comando:

$ python3 administrar.py startapp viewapp

B. Para crear el usuario para acceder a la base de datos de Django, ejecute el siguiente comando. Si ha creado el usuario antes, omita esta parte:

$ python3 administrar.py crea superusuario

C. Agregue el nombre de la aplicación en la parte INSTALLED_APP de la configuración.archivo py.

INSTALLED_APPS = [
..
'viewapp'
]

D. Crea una carpeta llamada plantillas dentro de viewapp carpeta y configure el plantillas ubicación de la aplicación en el PLANTILLAS parte de ajustes.py expediente.

PLANTILLAS = [

.. .
'DIRS': ['/ home / fahmida / django_pro / viewapp / templates'],
.. .
,
]

Cree una vista simple basada en funciones:

Abre el puntos de vista.py archivo de la viewapp carpeta y reemplace el contenido de este archivo con el siguiente script. índice() se utiliza en el script para crear el contenido HTML que se enviará al navegador mediante el HttpResponse () método. Aquí, la fecha y hora actuales del sistema se leerán usando el hoy () función y el valor de la fecha actual se generará antes de enviar al navegador.

Puntos de vista.py

# Importe el módulo de fecha para leer la fecha actual
desde la fecha de importación de fecha y hora
# Importe el módulo HttpResponse para enviar datos de la vista a la plantilla
de django.http import HttpResponse
# Definir función para crear una vista basada en funciones
def index (solicitud):
# Leer la fecha actual
hoy = fecha.hoy()
# Establecer datos estáticos para la vista
contenido = "

Bienvenido a LinuxHint

"
contenido + = "Hoy es" + hoy.strftime ("% B") + "" + hoy.strftime ("% d") + "," + str (hoy.año) + "

"
# Envió el contenido al navegador
return HttpResponse (contenido)

Modificar el contenido del urls.py archivo con el siguiente script. En el guión, el 'bienvenidos/' La ruta está definida para llamar al índice() función que enviará el contenido HTML al archivo de plantilla.

urls.py

# Módulo de ruta de importación
de django.ruta de importación de URL
# Módulo de vista de importación
desde vistas de importación de viewapp
# Llame al método de índice para mostrar el contenido
urlpatterns = [
# Definir la ruta para llamar a la función index ()
ruta ('bienvenido /', vistas.índice)
]

Ejecute la siguiente URL desde el navegador que mostrará el siguiente resultado. El texto del título con formato y el valor de la fecha actual se muestran en el resultado.

http: // localhost: 8000 / welcome /

Cree una vista simple basada en clases:

Crear un vistas2.py archivo dentro de la carpeta viewapp y agregue el siguiente script. Mi vista La clase se define en el script que contiene un método llamado obtener(). Una variable de lista llamada listdata se declara en el script para crear una lista de 10 números aleatorios. Los valores de la lista se pasarán a la plantilla a través del HttpResponse () método cuando se llama a esta vista. lo aleatorio El módulo se ha utilizado en el script para generar un número entero aleatorio en cada iteración del por bucle usando el randint () función.

vistas2.py

# Importe el módulo HttpResponse para enviar datos de la vista a la plantilla
de django.http import HttpResponse
# Módulo de vista de importación
de django.vistas importar Vista
# Importar módulo aleatorio
importar al azar
# Definir clase para vistas basadas en clases
clase MyView (Ver):
def get (self, request):
# Declare la variable de lista
listdata = []
# Agrega el primer elemento de la lista
listdata.adjuntar('

La lista de 10 números aleatorios es:

')
# Itere el bucle 10 veces
para n en el rango (10):
# Genera un número aleatorio entre 1 y 50
número_aleatorio = aleatorio.randint (1, 50)
# Agrega el número aleatorio en la lista
listdata.añadir (número_aleatorio)
# Agrega un elemento de ruptura en la lista
listdata.adjuntar('
')
# Agrega el último elemento de la lista
listdata.adjuntar('
')
# Envíe los valores de la lista al navegador
return HttpResponse (listdata)

Modificar el contenido del urls.py archivo con el siguiente script. En el guión, el "número/ "Se define para llamar al Mi vista.as_view () método que enviará los datos de la lista al archivo de plantilla.

urls.py

# Módulo de ruta de importación
de django.ruta de importación de URL
# Módulo de vista de importación
desde vistas de importación de viewapp
# Importar clase MyView
desde viewapp.vistas2 importar MyView
# Llame al método get de la clase MyView
urlpatterns = [
# Definir la ruta para llamar a la función index ()
ruta ('bienvenido /', vistas.índice),
# Definir ruta para llamar a MyView.método as_view ()
ruta ('número /', MyView.as_view ()),
]

Ejecute la siguiente URL desde el navegador que mostrará el siguiente resultado. Los números de la salida se cambiarán si se actualiza la página porque cada número de la lista se generará aleatoriamente.

http: // localhost: 8000 / número /

Conclusión:

La salida de la aplicación web depende del script del archivo de vista que es una parte importante de cualquier aplicación web. Las vistas basadas en funciones se utilizan principalmente en la primera versión de la aplicación Django y ahora las versiones basadas en clases se utilizan en la mayoría de las aplicaciones de Django. Las formas de crear ambos tipos de vistas se han mostrado en este tutorial para ayudar a los nuevos usuarios de Django a crear sus vistas basadas en su aplicación.

OpenTTD frente a Simutrans
Crear su propia simulación de transporte puede ser divertido, relajante y extremadamente atractivo. Es por eso que debes asegurarte de probar tantos j...
Tutorial de OpenTTD
OpenTTD es uno de los juegos de simulación empresarial más populares que existen. En este juego, necesitas crear un maravilloso negocio de transporte....
SuperTuxKart para Linux
SuperTuxKart es un gran título diseñado para ofrecerte la experiencia Mario Kart de forma gratuita en tu sistema Linux. Es bastante desafiante y diver...