레일 3.2. 안녕. 현재 출시 된 앱에는 구현 된 인증 시스템이 구현되어 있으며 마이그레이션하기 위해 마이그레이션 할 예정입니다. 나는 일하는 유인원 로그인을 얻으려고 여기에서 지혜 끝에있다. 어떻게 든 Devise가 실제로 사용자 세션을 만드는 부분에 문제를 드릴 다운했습니다.Warden이 데이터베이스에 액세스하지 않음 (개발자)
def create
self.resource = warden.authenticate!(auth_options)
set_flash_message(:notice, :signed_in) if is_flashing_format?
sign_in(resource_name, resource)
yield resource if block_given?
respond_with resource, location: after_sign_in_path_for(resource)
end
경로 (나는 유증 컨트롤러를 변경하고 그대로 그냥 놀리려는으로 디버깅하기 위해 고안 컨트롤러 코드를 붙여 넣은) :
여기서 문제가 소장에도 데이터베이스를 타격하지 않다
devise_for :users, controllers: { sessions: "sessions" }
authenticate
. 그냥
nil
을 반환합니다. 내 다른 간단한 응용 프로그램을 확인하고
authenticate
의 동작은 전자 메일/암호가 맞는지 여부에 관계없이 데이터베이스를 검사합니다. 그 문제에 대해 Warden/Devise에게 데이터베이스를 체크 아웃하기 위해 select 문을 실제로 수행하게하려면 어떻게해야합니까?
(내가 너희들을 도와 붙여 넣을 수있는 일이 있다면 내가 붙여 것) 콘솔
모델의 "작성자"회원은 어떤 모습입니까? –
이것을 알아 냈습니까? 나는 같은 문제에 뛰어 들고있다. – bitops