레일스 앱을 만들고 있습니다.
사용자가 Devise를 사용하여 다음에 암호 입력을 건너 뛰도록 '기억하십시오'확인란을 구현하고 싶습니다. 구현 방법을 알아낼 수 없습니다.
이것에 대해 조금이라도 궁금한 점이 있으시면 그에 대한 샘플 코드를 보여주십시오.Devise 사용 방법 : 기억 가능?
10
A
답변
13
는
class User < ActiveRecord::Base
devise :database_authenticatable, :registerable, :recoverable, :rememberable, :trackable,
:validatable, :token_authenticatable, :lockable, :omniauthable
# ...
end
사용자
class AddRememberCreatedAtToUsers < ActiveRecord::Migration
def change
add_column :users, :remember_created_at, :datetime
end
end
당신이 고안 기본 뷰를 사용하지 않는 경우의 테이블에 remember_created_at
열을 추가하는 마이그레이션을 생성하여 사용자 모델의 :rememberable
옵션 추가 보기에 확인란을 추가하십시오.
<%= f.check_box :remember_me %> <%= f.label :remember_me %>
필요가 있습니다.
4
자신 만의 인증 전략을 작성하면 기억에 남을만한 문제가 발생할 수 있습니다. 인증 된 리소스 객체 (예 : User
)! 메서드는 양식 데이터에서 resource.remember_me
을 설정해야합니다. 이것은 일반적으로 부모 Authenticable의 validate 메소드에 의해 처리됩니다. 이 방법을 사용하지 않으면 직접 설정해야합니다.
나를 위해 작동하지 않았다! 다른 접근법? – Prem
이 코드는 작동하지 않습니다. – indb
나에게도 효과가 없다 : O – ImranNaqvi