Чтение и запись request.session
Сохраняйте и извлекайте такие значения, как содержимое корзины
«Чтение и запись request.session» — бесплатный урок Django Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Django Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Django Academy содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
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. 💬
Часто задаваемые вопросы
Урок «Чтение и запись request.session» бесплатный?
Да — полный текст урока «Чтение и запись request.session» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Django Academy, подпишись на CoddyKit PRO. Курс Django Academy содержит 4 уроков всего.
Чему я научусь в уроке «Чтение и запись request.session»?
Сохраняйте и извлекайте такие значения, как содержимое корзины Ты практикуешь Django Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Django Academy?
Предыдущий опыт не требуется. Django Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.
Сколько времени занимает урок «Чтение и запись request.session»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Django Academy?
Да. Каждый урок Django Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Инфраструктура сеансов
- Чтение и запись request.session
- Инфраструктура сообщений
- Файлы cookie и сеансы