Я установил простой пример приложения, которое использует devise для аутентификации пользователя.
Когда при входе в систему я отмечаю флажок rember me, в консоли появляется следующее:
Обработка в Devise :: SessionsController # создать как HTML
Параметры: {"commit" => "Войти в систему", "authenticity_token" => "Vm + 2aWEmCRnnjdXAOpXdI5dGChUKlEcmfGNXNoGUkwc =", "utf8" => «Γ £ ô», «user» => {«запомнить_me» => 1 , "пароль"
=> "[FILTERED]", "email" => "test@example.com"}}
← [1 м ← [35 м Пользовательская нагрузка (1,0 мс) ← [0 м ВЫБРАТЬ «пользователи». * ИЗ «пользователей» ГДЕ «пользователи». «Электронная почта» = «test@example.com» LIMIT 1
← [1m ← [36mAREL (1.0ms) ← [0m ← [1mUPDATE "пользователи" SET "last_sign_in_at" = '2011-10-06 21: 36: 46.439511', "updated_at" = '2011-10-06 21:43 : 59.298269 ', "sign_in_coun
t "= 15," current_sign_in_at "= '2011-10-06 21: 43: 59.297269' ГДЕ" пользователи "." id "= 1 ← [0m
У меня в контроллере сообщений есть следующее:
before_filter :authenticate_user!
Однако, когда я закрываю браузер и снова открываю его, я вынужден снова войти в систему, прежде чем я смогу просматривать сообщения. Кажется, что cookie не сохраняется. Я нашел следующий файл cookie в Firefox для своей страницы:
Имя куки: Remember_user_token
Истекает: в конце сессии
Это файл cookie, который должен храниться и срок его действия истекает в будущем, но срок его действия истекает в конце сеанса? Может кто-нибудь это проверить?
Я пытался как комментировать, так и раскомментировать config.remember_for = 2.weeks
в devise.rb для разных настроек, и, похоже, ничего не решило проблему.
Мой файл User.rb выглядит так:
класс User
devise: database_authenticatable,: registerable,
: извлекаемый,: запоминаемый,: отслеживаемый,: проверяемый
# Настройка доступных (или защищенных) атрибутов для вашей модели
attr_accessible: электронная почта,: пароль,: подтверждение пароля,: запомнить_me
конец