2014-12-21 8 views
2

우분투에서이 문제가 발생합니다. 14.04 레일 4.1.8과 루비 2.1.2가 있습니다. 지난번에 Mac OSX 10.10에서 동일한 레일 및 루비 버전을 사용해 보았습니다. 사용자를 성공적으로 만들 수있었습니다.Authlogic 잘못된 암호 검증 오류

암호가 너무 짧습니다 (최소 5 자) 암호 확인이 그렇지 않은 비밀번호를

일치하지 않습니다 : 내 우분투에 그것을 시도하고 때 14.04 나는 암호 필드에 대한 다음과 같은 오류를 얻고있다 암호의 길이는 얼마이며, 암호와 암호 확인이 동일한 것임을 확신합니다. authlogic에서 내 비밀번호 입력란을 인식하지 못하는 것 같습니다.

acts_as_authentic do |c| 
c.validates_length_of_password_field_options = {minimum: 5} 
c.crypto_provider = Authlogic::CryptoProviders::BCrypt 
c.login_field = :email 

참고 : 가 여기 내 설정이다 또한 login_field로 내 이메일 필드를 인식 authlogic 것은 그래서 나는 단지 암호 및 암호 확인으로 로그인 필드에 문제가 없습니다. DB의 암호 필드 이름은 crypted_password입니다.

이 이상한 문제로 어떤 도움을 주실 수 있습니까? 아니면 누군가가 authlogic 검증이 passord에 실패하는 이유를 알기 위해 어떻게 디버깅 할 수 있는지 알려주실 수 있습니까?

답변

0

이 문제가 해결되었습니다. 나의 양식은 다음과 같이이었다 :

<div class="form-group"> 
    <%= f.label :crypted_password, 'Password' %><br> 
    <%= f.password_field :crypted_password, class: 'form-control' %> 
    </div> 

그리고 컨트롤러에서 내 사용자 매개 변수는 다음과 같다 :

params.require(:user).permit(:email, :crypted_password, :password_confirmation) 

그리고 그것은 authlogic 암호로 crypted_password 매개 변수를 인식하지 않았다처럼 보인다. 그리고 "crypted"를 제거했을 때 : crypted_password는 작동했습니다. Mac OSX에서 작동하는 이유는 모르지만 현재 우분투 14.04에서 작동합니다.