Cómo crear operaciones CRUD con FastAPI rápidamente

En este post, exploraremos cómo implementar rápidamente operaciones CRUD con FastAPI. Empezaremos configurando FastAPI y la base de datos, luego crearemos los endpoints API para las operaciones CRUD.

Daniel Costa

Daniel Costa

15 April 2025

Cómo crear operaciones CRUD con FastAPI rápidamente

Las operaciones CRUD son esenciales en cualquier aplicación web que involucre el almacenamiento y la recuperación de datos. Estas operaciones permiten a los usuarios crear nuevos registros, recuperar registros existentes, actualizar registros existentes y eliminar registros de una base de datos.

FastAPI facilita la implementación de operaciones CRUD al proporcionar una forma sencilla e intuitiva de definir endpoints de API y manejar solicitudes HTTP. Aprovecha las sugerencias de tipo de Python para generar automáticamente documentación interactiva de la API y realizar la validación de datos, lo que la convierte en una herramienta poderosa para construir API robustas y bien documentadas.

En esta publicación, exploraremos cómo implementar rápidamente operaciones CRUD con FastAPI. Comenzaremos configurando FastAPI y la base de datos, luego procederemos a crear los endpoints de API para las operaciones CRUD. También cubriremos la implementación de las operaciones de creación, lectura, actualización y eliminación, así como las pruebas y la validación de estas operaciones. ¡Así que empecemos y sumérjase en el mundo de FastAPI y las operaciones CRUD!

¿Qué es CRUD en FastAPI?

En FastAPI, CRUD se refiere a las operaciones básicas que se pueden realizar en los datos en una base de datos o sistema de almacenamiento de datos. CRUD significa Create, Read, Update y Delete (Crear, Leer, Actualizar y Eliminar), y representa las funcionalidades fundamentales que son esenciales para administrar datos en la mayoría de las aplicaciones.

Aquí hay una explicación detallada de las operaciones CRUD en FastAPI:

Cómo crear operaciones CRUD con FastAPI rápidamente

Para implementar la funcionalidad CRUD con FastAPI, siga estos pasos:

Paso 1: Instale FastAPI: asegúrese de que Python esté instalado en su sistema y ejecute el siguiente comando en la línea de comandos para instalar FastAPI:

pip install fastapi

Paso 2: Cree una aplicación FastAPI: cree un nuevo archivo de Python (por ejemplo, main.py) e importe los módulos y bibliotecas necesarios:

from fastapi import FastAPI
from pydantic import BaseModel
from typing import List

app = FastAPI()

Paso 3: Defina modelos de datos: use Pydantic para definir modelos de datos. Por ejemplo:

class Item(BaseModel):
    id: int
    name: str
    price: float

Paso 4: Cree rutas y controladores CRUD: use FastAPI para crear rutas y funciones de manejo correspondientes para las operaciones CRUD. Aquí hay un ejemplo:

items = []

@app.get("/items", response_model=List[Item])
async def read_items():
    return items

@app.post("/items", response_model=Item)
async def create_item(item: Item):
    items.append(item)
    return item

@app.put("/items/{item_id}", response_model=Item)
async def update_item(item_id: int, item: Item):
    items[item_id] = item
    return item

@app.delete("/items/{item_id}")
async def delete_item(item_id: int):
    del items[item_id]
    return {"message": "Item deleted"}

Paso 5: Ejecute la aplicación: para ejecutar la aplicación FastAPI y probar la funcionalidad APIRouter, use un servidor ASGI como uvicorn. Asegúrese de tener uvicorn instalado:

pip install uvicorn

En su editor IDE, abra la terminal, navegue hasta el directorio donde está almacenado el archivo main.py y ejecute el siguiente comando para iniciar la aplicación:

uvicorn main:app --reload

Esto iniciará la aplicación FastAPI en el puerto predeterminado (generalmente 8000) con la recarga automática habilitada, por lo que la aplicación se recargará automáticamente cuando realice cambios en el código.

Paso 6: Pruebe la operación CRUD

Utilice una herramienta de cliente HTTP (por ejemplo, cURL o Apidog) para enviar solicitudes y probar las funcionalidades de Crear, Leer, Actualizar y Eliminar. Aquí hay algunas solicitudes de ejemplo:

POST http://localhost:8000/items
{
    "id": 1,
    "name": "Apple",
    "price": 0.5
}
 a POST request
GET http://localhost:8000/items
a GET request
GET http://localhost:8000/items
a PUT request
DELETE http://localhost:8000/items/1
 a DELETE request

Por último, podemos escribir pruebas para la operación de eliminación en Apidog. Podemos simular una solicitud DELETE al endpoint de eliminación y verificar si el código de estado de la respuesta es 200 (lo que indica una eliminación exitosa). Luego podemos intentar recuperar los datos eliminados de la base de datos y asegurarnos de que no existan.

Al escribir estas pruebas, podemos asegurarnos de que nuestras operaciones CRUD funcionen correctamente y manejen diferentes escenarios, como entradas no válidas o datos inexistentes.

Consejos adicionales

Utilice la compatibilidad con IDE como Visual Studio Code para mejorar la eficiencia del desarrollo con funciones de autocompletado de código, verificación de errores y depuración.

Siguiendo estas prácticas, puede desarrollar API robustas y eficientes con FastAPI, agilizando su proceso de desarrollo e implementación.

Explore more

Cómo usar Lovable AI (Alternativa a Cursor para desarrolladores web)

Cómo usar Lovable AI (Alternativa a Cursor para desarrolladores web)

Aprende a crear cualquier web con Lovable en esta guía completa. Descubre procesos paso a paso, funciones innovadoras e integra herramientas gratuitas como Apidog para gestión API.

15 April 2025

Cómo usar n8n con servidores MCP

Cómo usar n8n con servidores MCP

Automatiza flujos con n8n y servidores MCP para IA. Guía técnica: configuración, APIs, nodo "MCP Server Trigger" y Apidog para pruebas.

14 April 2025

Cómo añadir claves API personalizadas a Cursor: Una guía completa

Cómo añadir claves API personalizadas a Cursor: Una guía completa

Este tutorial te guiará para configurar y gestionar claves API personalizadas en Cursor (OpenAI, Anthropic, Google y Azure).

11 April 2025

Practica el diseño de API en Apidog

Descubre una forma más fácil de construir y usar APIs