Desarrollo de aplicaciones web con Django y FastAPI en Python
En este tutorial, aprenderemos a desarrollar aplicaciones web con Django y FastAPI en Python. Django es un framework web completo que proporciona una gran cantidad de funcionalidades, mientras que FastAPI es un framework web moderno que se centra en la velocidad y la eficiencia.
Requisitos previos
Para seguir este tutorial, necesitarás tener los siguientes requisitos previos:
- Conocimientos básicos de Python
- Un editor de texto o IDE
- Una instalación de Python 3.7 o superior
Instalación de Django y FastAPI
Para instalar Django, ejecuta el siguiente comando en tu terminal:
pip install django
Para instalar FastAPI, ejecuta el siguiente comando en tu terminal:
pip install fastapi
Creando un proyecto Django
Para crear un nuevo proyecto Django, ejecuta el siguiente comando en tu terminal:
django-admin startproject mi_proyecto
Este comando creará una nueva carpeta llamada mi_proyecto
con los siguientes archivos:
mi_proyecto/__init__.py
: El archivo principal del proyectomi_proyecto/settings.py
: Las configuraciones del proyectomi_proyecto/urls.py
: Las URL del proyectomi_proyecto/wsgi.py
: El archivo WSGI del proyecto
Creando un proyecto FastAPI
Para crear un nuevo proyecto FastAPI, ejecuta el siguiente comando en tu terminal:
uvicorn main:app --reload
Este comando creará un nuevo archivo llamado main.py
con el siguiente contenido:
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def index():
return {"Hello": "World!"}
if __name__ == "__main__":
uvicorn.run(app, host="0.0.0.0", port=8000, reload=True)
Este código creará una API simple que devuelve el mensaje «Hello, World!» cuando se accede a la URL /
.
Creando una vista Django
Para crear una vista Django, crea un archivo llamado views.py
en la carpeta mi_proyecto
. El siguiente código crea una vista que devuelve el mensaje «Hello, World!» cuando se accede a la URL /
:
from django.http import HttpResponse
def index(request):
return HttpResponse("Hello, World!")
Creando una ruta Django
Para asociar una vista a una ruta, actualiza el archivo urls.py
. El siguiente código asocia la vista index()
a la ruta /
:
from django.contrib import admin
from django.urls import path
from mi_proyecto import views
urlpatterns = [
path("", views.index, name="index"),
path("admin/", admin.site.urls),
]
Ejecutando un proyecto Django
Para ejecutar un proyecto Django, ejecuta el siguiente comando en tu terminal:
python manage.py runserver
Esto abrirá un servidor web en tu máquina local en el puerto 8000. Puedes acceder a la aplicación en la URL http://localhost:8000/
.
Creando una ruta FastAPI
Para crear una ruta FastAPI, crea una función que devuelva el resultado que deseas que se devuelva cuando se acceda a la ruta. El siguiente código crea una ruta que devuelve el mensaje «Hello, World!» cuando se accede a la URL /
:
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def index():
return {"Hello": "World!"}
Ejecutando un proyecto FastAPI
Para ejecutar un proyecto FastAPI, ejecuta el siguiente comando en tu terminal:
uvicorn main:app --reload
Esto abrirá un servidor web en tu máquina local en el puerto 8000. Puedes acceder a la aplicación en la URL http://localhost:8000/
.
Comparación de Django y FastAPI
Django y FastAPI son dos frameworks web populares para Python. Ambos tienen sus propias ventajas y desventajas.
Django
- Ventajas:
- Es un framework completo que proporciona una gran cantidad de funcionalidades
- Es fácil de aprender y usar
- Tiene una gran comunidad de