Ninja Python: Utilizando el Framework de Desarrollo Web Ninja en Python
Ninja es un framework de desarrollo web minimalista y rápido escrito en Python. Es una buena opción para desarrolladores que buscan un framework que sea fácil de aprender y usar, pero que aún ofrezca una gran cantidad de características y flexibilidad.
En este tutorial, aprenderemos a usar Ninja para crear un sitio web simple. Cubriremos los siguientes temas:
- Instalación de Ninja
- Creación de una aplicación Ninja
- Agregar rutas y vistas
- Renderizar plantillas
- Manejando solicitudes HTTP
- Trabajando con bases de datos
Instalación de Ninja
Para instalar Ninja, usaremos pip:
pip install ninja
Creación de una aplicación Ninja
Para crear una aplicación Ninja, usaremos el siguiente comando:
ninja new mysite
Este comando creará una nueva carpeta llamada mysite con los siguientes archivos:
mysite/__init__.py: El archivo principal de la aplicaciónmysite/settings.py: El archivo de configuración de la aplicaciónmysite/urls.py: El archivo de rutas de la aplicaciónmysite/views.py: El archivo de vistas de la aplicación
Agregar rutas y vistas
Las rutas son las direcciones que se usan para acceder a las vistas de una aplicación web. Las vistas son los archivos que se encargan de generar la respuesta a una solicitud HTTP.
Para agregar una ruta a nuestra aplicación, usaremos el siguiente código:
from django.urls import path
from mysite.views import home
urlpatterns = [
path('', home, name='home'),
]
Esta ruta mapea la dirección / a la vista home.
La vista home es un archivo que devolverá una simple página HTML:
from django.shortcuts import render
def home(request):
return render(request, 'home.html')
Este archivo usa el método render() para devolver una plantilla HTML.
Renderizando plantillas
Las plantillas son archivos HTML que se usan para generar la respuesta a una solicitud HTTP.
Para crear una plantilla, usaremos el siguiente código:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Ninja Python</title>
</head>
<body>
<h1>Hola, mundo!</h1>
</body>
</html>
Esta plantilla contiene un simple encabezado y un párrafo.
Manejando solicitudes HTTP
Ninja proporciona una serie de funciones y clases para manejar solicitudes HTTP.
Por ejemplo, podemos usar la función get() para obtener los parámetros de una solicitud GET:
from django.shortcuts import render
def home(request):
name = request.GET.get('name', 'Mundo')
return render(request, 'home.html', {'name': name})
Esta función devolverá una plantilla HTML con el nombre del usuario en el parámetro name.
Trabajando con bases de datos
Ninja proporciona soporte para una variedad de bases de datos, incluyendo MySQL, PostgreSQL y SQLite.
Para trabajar con bases de datos en Ninja, usaremos el módulo django.db.
Por ejemplo, podemos crear un modelo de base de datos para una tabla de usuarios:
from django.db import models
class User(models.Model):
name = models.CharField(max_length=255)
email = models.EmailField()
def __str__(self):
return self.name
Una vez que hayamos creado un modelo de base de datos, podemos usarlo para crear y acceder a datos en la base de datos.
Por ejemplo, podemos crear un nuevo usuario de la siguiente manera:
from mysite.models import User
user = User.objects.create(name='John Doe', email='johndoe@example.com')
También podemos obtener todos los usuarios de la base de datos de la siguiente manera:
from mysite.models import User
users = User.objects.all()
Conclusión
Ninja es un framework de desarrollo web minimalista y rápido que es una buena opción para desarrolladores que buscan un framework que sea fácil de aprender y usar.
En este tutorial, aprendimos a usar


