Rutas y Vistas en Django (HttpResponse)

 Este Shot 🍹 es mejor que te lo tomes con calma, recuerda revisar los shots anteriores de Django 🐍

Como bien sabemos, Django es un framework para el desarrollo web, por ende, necesitaremos acceder por medio de rutas (urls) a todo el proyecto que estemos realizando y para así interactuar con el usuario a través de las Vistas (view) que son la parte visual de las aplicaciones, las páginas web.

Para entender el comportamiento de las Rutas (las llamaremos URLs) y las Vistas (Llamadas views, en inglés) haremos un breve ejercicio donde mostraremos un saludo al usuario a través de una petición y respuesta por HTTP.

Para ello, en el archivo views.py de nuestra aplicación “mi_app” crearemos una función que reciba como parámetro un request y nos retorne una respuesta por http que sea un saludo al usuario:
httpresponse("hola usuarios")

Lo primero será agregar la línea from django.http import HttpResponse  que importa la función HttpResponse del paquede de Http de Django. Esta función nos permitirá enviar datos a los usuarios que visitan. Nos quedaría de la siguiente manera:

from django.shortcuts import render

from django.http import HttpResponse

 

# Create your views here.

def index(request):

    return HttpResponse("¡Hola Usuario!")

Ahora en la carpeta de nuestra aplicación “mi_app” necesitamos crear un archivo llamado urls.py ya que en ese aricvho crearemos los paths o rutas para desplegar las vistas de nuestra aplicación, esto de la siguiente manera:

  • from django.urls import path para importar la función path del módulo urls de django
  • from . import views cuando colocamos from . quiere decir que bsucaremos al archivo en el mismo directorio donde estemos, e importamos views que es el archivo que contiene nuestras vistas.
  • urlpatterns aquí se almacenarán la lista de urls/path, es obligatorio que se llame de esa manera.

  • path("",views.index(), name="saludo") el primer argumento de la función path() es la expresión regular que coincide con la URL. El segundo argumento es la vista que se llama cuando se coincide con la URL. El tercer argumento es el nombre de la ruta, que se puede utilizar para referirse a la ruta en otras partes de la aplicación.

Sería de esta manera: 

from django.urls import path
from . import views

urlpatterns = [
    path("",views.index, name="saludo")

]

path("",views.index, name="saludo")

Lo que sigue es que en nuestro proyecto principal “mi_proyecto” buscaremos el archivo urls.py y en la línea from django.urls import path agregaremos a include para poder incluir nuevas rutas de otras apps:

from django.urls import path, include

Luego, en la lista urlpatterns agregamos un path nuevo para llamar las urls de la app “mi_app

from django.contrib import admin

from django.urls import path, include

 

urlpatterns = [

    path('admin/', admin.site.urls),

    path('',include('mi_app.urls'))

]

path('',include('mi_app.urls'))

De esta manera le estamos diciendo que cuando ingrese a la ruta “” o sea la ruta raíz, va a llamar las rutas de la app "mi_app" que colocamos en el archivo urls.py de esta misma.

Solo falta ejecutar nuestro proyecto con el comando python manage.py runserver en el terminal.

Y listo, si todo sale bien debemos tener un mensaje de “Hola Usuarios” cada vez que ingresamos a la url raíz del proyecto (http://127.0.0.1:8000/)


En conclusión, dentro de las aplicaciones tenemos el archivo views.py que tendrá las funciones que serán nuestras vistas, en urls.py tendremos la colección de path que nos indicarán en qué url se ejecutarán las vistas.


Espero te haya servido este Shot 🍹recuerda que puedes revisar los demás post de Blog, saludos 🐍





 









Comentarios

Populares

Manejo de templates/plantillas en Django

Cómo Crear un Proyecto en Django

Crear aplicaciones para proyecto de Django