0Pricing
Flask Academy · Lección

Endpoints de lectura individual y múltiple

Devuelva un único elemento o una colección.

Endpoints de lectura individual y múltiple es una lección gratuita de Flask Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Flask Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Flask Academy incluye 4 lecciones en total.

Partes de esta lección aún no han sido traducidas y se muestran en inglés.

Two Shapes of Read

A REST resource needs two read endpoints: one that returns a single item by id, and one that returns the whole collection. 📚

List Route for Many

The collection lives at a plain path like /users. A GET there should answer with every matching record.

@app.route("/users")
def list_users():
    ...

Load Them All

Fetch the full set with query.all(), which gives you a Python list of model instances to serialize.

users = User.query.all()

Serialize the Collection

jsonify cannot dump model objects directly, so map each row to a dict first, then return the list.

return jsonify([{"id": u.id, "name": u.name} for u in users])

Detail Route for One

A single item lives at /users/<id>. The id in the path tells you exactly which row to load.

@app.route("/users/<int:user_id>")
def get_user(user_id):
    ...

Fetch That One Row

Use get() with the path id to pull the matching record straight from the database.

user = User.query.get(user_id)

Return the Single Item

Wrap the found row in a dict and jsonify it. Your client gets one clean JSON object back.

return jsonify({"id": user.id, "name": user.name})

Handle the Missing Case

If get returns None, the id was wrong, so reply with a 404 instead of crashing on a None value.

if user is None:
    return jsonify(error="not found"), 404

Skip the Check with get_or_404

Flask-SQLAlchemy's get_or_404() fetches by id or aborts with 404 automatically, trimming the boilerplate from detail views.

user = User.query.get_or_404(user_id)

Paginate Long Lists

Returning thousands of rows is slow. Use paginate() to slice the collection into pages your client can request one at a time.

page = User.query.paginate(page=1, per_page=20)

List Returns an Array

Keep shapes predictable: the collection route returns a JSON array, while the detail route returns a single object.

Quick Check

A request hits /users/42 but no such row exists. What should the endpoint do?

Recap: Reading Records

You built a list route returning an array and a detail route returning one item, with 404 for missing rows. Reads done right! 🎉

Preguntas frecuentes

¿La lección «Endpoints de lectura individual y múltiple» es gratis?

Sí — el texto completo de «Endpoints de lectura individual y múltiple» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Flask Academy, actualiza a CoddyKit PRO. El curso de Flask Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Endpoints de lectura individual y múltiple»?

Devuelva un único elemento o una colección. Practicas Flask Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Flask Academy?

No se requiere experiencia previa. Flask Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.

¿Cuánto tiempo toma la lección «Endpoints de lectura individual y múltiple»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Flask Academy?

Sí. Cada lección de Flask Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Cree registros y confirme sesiones
  2. Endpoints de lectura individual y múltiple
  3. Actualice registros existentes de forma segura
  4. Elimine registros y gestione filas ausentes
← Volver a Flask Academy