Вопрос по django, web-applications, python – Время жизни сессии Django в сервере разработки

2

В настоящее время я работаю с Session в моем веб-приложении и заметил, что всякий раз, когда я перезагружаю сервер разработки (встроенный сервер, поставляемый с Django), сеанс сам не сбрасывается. Он переносится даже несмотря на то, что я перезагружал сервер снова и снова.

Где я могу установить его так, чтобы при сбросе / перезапуске сервера разработки сессии очищались / очищались?

Я просто пытался с чем-то поэкспериментировать. Haikal Nashuha
Я не уверен, почему это было бы желаемым поведением. Вы ожидаете того же в производстве? Вы, конечно же, не захотите, скажем, всех своих клиентов. Корзины нужно опустошать только потому, что вы отскочили от сервера. Daniel Roseman

Ваш Ответ

2   ответа
2

а. Например,

SESSION_ENGINE = 'django.contrib.sessions.backends.cache'

предполагает: Django 1.0-1.5, используя бэкэнд по умолчанию для кэша (LocMem)

Использование подписанного бэкэнда и очистка куки вашего браузераcould работать тоже, но я не пробовал.

Why?

Django по умолчанию использует базу данных в качестве бэкенда сессии

SESSION_ENGINE

Default: django.contrib.sessions.backends.db

В результате старые сеансы восстанавливаются из базы данных при перезагрузке сервера разработки. Это верно и для файла, и для cached_db.

+1 за полезный совет! Haikal Nashuha
2

DJANGO_SETTINGS_MODULE="myproj.settings" \
  python -c 'from django.contrib.sessions.models import Session; \
    Session.objects.all().delete()' 
python manage.py runserver

смотрите здесь фрагменты Django: очистить сессионную таблицу - & gt;http://djangosnippets.org/snippets/48/

Похожие вопросы