Lectura y escritura de request.session
Guarde y recupere valores, como los de un carrito
Lectura y escritura de request.session es una lección gratuita de Django 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 Django Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Django Academy incluye 4 lecciones en total.
Partes de esta lección aún no han sido traducidas y se muestran en inglés.
The Session as a Dict
Think of request.session as a dictionary that follows one visitor. You read and write keys exactly like any Python dict.
Writing a Value
To remember something, just assign a key. Here we save a cart list so the visitor keeps their items across pages.
def add_to_cart(request):
request.session['cart'] = [1, 2, 3]
return redirect('cart')Reading a Value
Read a key back the dictionary way. Using get with a default avoids a crash when the key has not been set yet.
cart = request.session.get('cart', [])Updating Stored Data
To grow a cart, read it, change the Python object, then assign it back so Django notices the update and saves it.
cart = request.session.get('cart', [])
cart.append(7)
request.session['cart'] = cartMark It Modified
When you mutate a nested object in place, set session.modified to True so Django knows it must persist the change.
request.session['cart'].append(7)
request.session.modified = TrueDeleting a Key
Remove a single value with del, just like a normal dictionary, to forget one piece of session state.
del request.session['cart']Checking for a Key
Use the in operator to test whether a value exists before you read it, which keeps your view logic clean.
if 'cart' in request.session:
show_cart()What Can You Store
Session values must be JSON serializable by default. Lists, dicts, strings, and numbers are fine; model instances are not.
Clearing Everything
To wipe all session data for a visitor, call flush. It deletes the data and rotates the session key, handy at logout.
request.session.flush()Set Expiry Per Session
Override the global timeout for one visitor with set_expiry. Passing zero ends the session when the browser closes.
request.session.set_expiry(0)Saves Happen For You
You rarely call save yourself. The middleware writes the session at the end of each request whenever you changed it.
Quick Check
You changed a list already stored in the session in place. What must you do?
Recap
You used request.session like a dict: write, read with get, delete, flush, and set expiry. Remember to flag in-place edits as modified. Next up, the messages framework. 💬
Preguntas frecuentes
¿La lección «Lectura y escritura de request.session» es gratis?
Sí — el texto completo de «Lectura y escritura de request.session» 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 Django Academy, actualiza a CoddyKit PRO. El curso de Django Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Lectura y escritura de request.session»?
Guarde y recupere valores, como los de un carrito Practicas Django 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 Django Academy?
No se requiere experiencia previa. Django 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 «Lectura y escritura de request.session»?
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 Django Academy?
Sí. Cada lección de Django 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
- El framework de sesiones
- Lectura y escritura de request.session
- El framework de mensajes
- Cookies frente a sesiones