Almacene en caché una vista con cached
Memorice respuestas completas según la URL.
Almacene en caché una vista con cached 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.
Caching Whole Responses
Some pages cost real work to build. The cached decorator stores the entire response, so repeat visitors get an instant copy.
Apply the Decorator
You add @cache.cached() right above your view function. The first request runs it; later ones replay the stored result.
@app.route("/report")
@cache.cached()
def report():
return build_report()Order of Decorators
Stacking matters. Put @app.route on top and @cache.cached below it, so routing happens before caching kicks in.
Set a Per-View Timeout
You can override the global setting per view. The timeout argument says how many seconds this specific response stays fresh.
@cache.cached(timeout=60)
def report():
...Cached by Request Path
By default the cache key is the request path. So /report and /report/extra are stored as separate, independent entries.
Query Strings Are Ignored
Watch out: the default key skips the query string. So /list?page=2 and /list?page=3 would share one cached entry.
Vary on the Full URL
To split by query string, set query_string=True. Now each unique URL, parameters included, gets its own cached response.
@cache.cached(query_string=True)
def listing():
...Custom Cache Keys
Need full control? Pass a make_cache_key function that builds the key yourself, for example mixing in the current user.
@cache.cached(make_cache_key=my_key)Only Cache Safe Methods
Cache GET requests, never POST. Caching a write would replay an old body and skip the side effects users expect.
Skip the Cache When Needed
Return unless a condition holds and the view runs fresh every time. Handy to bypass caching for logged-in users.
@cache.cached(unless=lambda: g.user)First Hit vs Later Hits
The first request is a cache miss and does the work. Every later request within the timeout is a fast cache hit.
Quick Check
Your list page uses ?page= but every page shows the same cached content.
Recap: View Caching
You learned to wrap views with @cache.cached, tune the timeout, key on the full URL, and skip caching for writes. 🚀
Preguntas frecuentes
¿La lección «Almacene en caché una vista con cached» es gratis?
Sí — el texto completo de «Almacene en caché una vista con cached» 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 «Almacene en caché una vista con cached»?
Memorice respuestas completas según la URL. 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 «Almacene en caché una vista con cached»?
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
- Configure Flask-Caching
- Almacene en caché una vista con cached
- Memorice funciones costosas
- Invalide y caduque entradas de caché