2010-11-09 17 views
5

Trong Devise, tôi đăng nhập người dùng của tôi như thế này:Khi thực hiện đăng nhập thủ công cho người dùng trong Devise, làm thế nào bạn có thể đặt tôi nhớ là có?

sign_in_and_redirect(:user, user) 

Theo thăm dò mặc định trong trang, có một hộp kiểm mà người dùng có thể chọn để họ không cần phải đăng nhập lại khi họ trở lại trang web. Nhưng khi bạn đăng nhập bằng dòng sign_in_and_redirect(:user, user), tôi không thể tìm ra cách để đặt tham số đó thành có. Có ai biết làm thế nào? Cảm ơn vì đã đọc.

Trả lời

4
+2

này không làm việc cho tôi . Thay vào đó tôi phải sử dụng https://github.com/plataformatec/devise/blob/master/lib/devise/controllers/rememberable.rb 'bao gồm Devise :: Controllers: Rememberable' và sau đó trong hành động chỉ cần gọi' remember_me the_user' –

+1

Tôi cũng phải làm những gì Dmytrii gợi ý (mặc dù nó bao gồm Devise :: Controllers :: Rememberable (thiếu dấu hai chấm khác trước Rememberable)) – jhchen

4

Đã làm một số xét nghiệm. Trình bày những phát hiện cho người khác.

Giải pháp đơn giản nhất, giả sử đối tượng người dùng có module rememberable xác định trên devise declarable, là để thiết lập remember_me để thực về người dùng trước khi đăng nhập và chuyển hướng:

@user.remember_me = true 
sign_in_and_redirect(@user, :event => :authentication) 
+0

Điều đó làm việc cho tôi! Cảm ơn. – maicher

Các vấn đề liên quan