2015-03-11 6 views
1

Я используюрельсов authlogic не может найти CURRENT_USER (ноль) после использования HTTP базовой аутентификации

рельсов => 3.0.20

authlogic => 3.0.3

перед использованием HTTP базовой аутентификации все в порядке. Но после его использования после успешного входа в систему с 'http basic user name and pass' Мне нужно войти в систему с именем пользователя и паролем приложения, которое извлекается из базы данных. Он также успешно выполнен. Затем он перенаправляется на метод по умолчанию, который требует текущего пользователя. Но current user возвращает nil. UserSession.find также возвращает nil

любое представление о том, почему объекты сеанса возвращают нуль?

+0

Вы можете показать нам свой код контроллера? – Sontya

+0

Вы также можете попробовать добавить 'allow_http_basic_auth false' в свою модель' UserSession'. – Sontya

ответ

1

Если вы используете authlogic и rails 3, я считаю, что это может быть работа, если вы добавите ниже код в user_session.rb модели:

class UserSession < Authlogic::Session::Base 
    allow_http_basic_auth false 
end 

Не знаю, почему это проблема с этим Rails/Authlogic/HTTP сочетание, но в любом случае, исправление было добавить один вкладыш к вашей модели UserSession

Thumbs до Chris Irishhere Я нашел это в своем блоге.