27 февраля 2012 г. Django Python Релизы Сессии EN In English

Django. Зарелизил встраиваемое приложение "django-multi-sessions"

Данное расширение предоставляет интерфейсы для работы с несколькими сессионными бекендами. В основном предназначено для переноса сессий с одного механизма на другой, при этом не останавливая работу с сессиями, это так называемый "прозрачный перенос".

Текущая версия: 0.0.3

Установить его можно так:

pip install django-multi-sessions

Или скачайте тарболл, распакуйте и выполните:

python setup.py install

Настройки

Надо в settings.py объявить "multi_sessions.session" как SESSION_ENGINE и заполнить SESSION_MULTISESSIONS_POOL, как в примере:

SESSION_ENGINE = "multi_sessions.session"
SESSION_MULTISESSIONS_POOL = (
    {
        "backend": "redis_sessions.session",
        "modes": ["read", "write", "delete"]
    },
    {
        "backend": "django.contrib.sessions.backends.db",
        "modes": ["read", "delete"]
    },
)

В этом примере redis-backend используется как приоритетное хранилище (чтение, сохранение/создание, удаление) данных, а database-backend используется только для чтения и удаления сессий, так как мы с него переходим на redis, то не имеет смысла в него сохранять данные.

Исходники

Исходные коды можно получить на гитхабе!

Комментарии

Клёво. А часто приходится так переносить?

Нет конечно, но что-то мне подсказывает что ты меня троллишь :)

wd5 (Игорь) 20 марта 2012 г. 13:52

Можно посмотреть на примеры сайтов использующих django-multi-sessions на практике?

К сожелению, я не могу вам это сказать

Спасибо!

полезно кстати

Скажите а как мнеявно указать в какое место мне сохранить данные (допустим у меня все сессии имеют "modes": write

Укажите modes: write только тем кому надо явно сохранять данные. Сохраняются, насколько помню, по порядку следования бекендов в пуле.

Или я вас не понял? Опишите немного детальнее ваш вопрос

Cохраняются, по порядку следования бекендов в пуле.

спасибо то, что надо

Оставьте свой комментарий

Markdown