Как удалить сеансовый ключ в Django после его однократного использования? - PullRequest
19 голосов
/ 20 марта 2012

У меня два взгляда.

view1 передает сообщение об ошибке в view2 через ключ сеанса.

Как удалить ключ после рендеринга view2?Мне нужно только один раз: перенаправить с view1 на view2.Мне не нужно, чтобы это сообщение появлялось после обновления моей веб-страницы.Я не думаю, что Python будет продолжать работать, как только он достигнет return

Я думал об установке метки времени истечения, но мне нужно убедиться, что она существует в течение не менее 10-20 секунд, если приложение действительноЭто долго загружается (мы делаем некоторые серверные вещи с Django)?Так что время не такое многообещающее.

Спасибо.

Ответы [ 2 ]

48 голосов
/ 20 марта 2012

Вы можете удалить ключ из сеанса, как и любой другой словарь.

del request.session['your key']

Возможно, вам потребуется пометить сеанс как измененный, чтобы сохранить его, в зависимости от некоторых ваших настроек.

request.session.modified = True
13 голосов
/ 03 ноября 2015

Вы также можете вытолкнуть ключ из сеанса. Вы можете установить ключ для переменной и избавиться от него одновременно:

key_variable = request.session.pop('your key')
...