Почему сеансы не сохраняются в моем приложении Django?

У меня есть приложение Django (1.11.8), работающее на промежуточном сервере в Heroku.

Я импортировал базу данных с существующими записями, пользователями и т. д., и все работает нормально.

Когда я вхожу в систему, меня иногда возвращают на страницу входа. В других случаях я вхожу в систему и меня перенаправляют на страницу профиля пользователя. Однако, если я сделаю что-нибудь после этого, я в конечном итоге выйду из системы.

Я попытался убедиться, что имя файлов cookie не конфликтует с производственным приложением (которое работает нормально).

Я также проверил записи сеанса через оболочку. Когда мне удается войти в систему, не похоже, что он создает какие-либо новые записи сеанса. Чтобы убедиться, что я очистил все записи сеансов, и при входе в систему новые не создаются.

Соединение с базой данных выглядит нормально, так как я могу создать запись пользователя, зарегистрировавшись. Я также смог вручную создать запись сеанса через оболочку. Я просто не вижу ничего, созданного в результате входа на страницу.

Любые идеи оценены?

Редактировать:

Итак, в установленных приложениях я использую:

'django.contrib.admin', 'django.contrib.auth', 'django.contrib.sessions'

Двигатель:

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

В промежуточном программном обеспечении:

'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware',

РЕДАКТИРОВАТЬ 2: О.

Итак, я прочитал о сеансовом движке:

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

https://docs.djangoproject.com/en/1.11/topics/http/sessions/#using-cached-sessions

Поскольку я использую кеш, а не базу данных в разработке, это объясняет, почему я ничего не вижу в базе данных. Я предполагаю, что проблема с кешем в Heroku.


person digitalWestie    schedule 14.03.2018    source источник
comment
Может быть, какой-нибудь код, показывающий, что вы делаете, может помочь. Это может быть что угодно   -  person tgdn    schedule 14.03.2018
comment
Для начала нам нужно знать, какой движок сеанса вы используете в своих настройках.   -  person Ralf    schedule 14.03.2018
comment
kl я добавил некоторые детали настройки, немного django noob, поэтому дайте мне знать, если есть какая-либо более важная информация, которую я должен добавить   -  person digitalWestie    schedule 14.03.2018
comment
Я больше убежден, что в среде что-то есть, а не в коде, поскольку все это отлично работает локально и в продакшене.   -  person digitalWestie    schedule 14.03.2018


Ответы (1)


Оказывается, хранилище кеша не работает на Heroku, этот ответ все прояснил: Django Session Не работает на Heroku

person digitalWestie    schedule 21.03.2018