Lendo e escrevendo em request.session
Salve e recupere valores, como em um carrinho
Lendo e escrevendo em request.session é uma aula grátis de Django Academy no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Django Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Django Academy inclui 4 aulas no total.
Partes desta aula ainda não foram traduzidas e aparecem em 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. 💬
Perguntas Frequentes
A aula “Lendo e escrevendo em request.session” é grátis?
Sim — o texto completo de “Lendo e escrevendo em request.session” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Django Academy, atualize para CoddyKit PRO. O curso de Django Academy inclui 4 aulas no total.
O que vou aprender em “Lendo e escrevendo em request.session”?
Salve e recupere valores, como em um carrinho Você pratica Django Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Django Academy?
Nenhuma experiência prévia é necessária. Django Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.
Quanto tempo leva a aula “Lendo e escrevendo em request.session”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Django Academy?
Sim. Cada aula de Django Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- O framework de sessões
- Lendo e escrevendo em request.session
- O framework de mensagens
- Cookies versus sessões