2012-07-29 32 views
5

Tôi đang sử dụngRails Devise, cách bỏ qua email xác nhận nhưng vẫn tạo mã xác nhận?

 user.skip_confirmation! 

Để bỏ qua việc xác nhận email devise khi một người dùng mới được bổ sung bởi một người dùng hiện có. Vấn đề với skip_confirmation là nó không tạo ra một mã xác nhận.

Tôi muốn gửi email xác nhận theo cách thủ công có nghĩa là tôi cần mã xác nhận.

Tôi làm cách nào để bỏ qua email xác nhận đã tạo ra nhưng vẫn tạo xác nhận để cho phép tôi gửi email xác nhận tùy chỉnh theo cách thủ công cho người dùng đã thêm?

Cảm ơn

Trả lời

2

Xem confirmable.rb. Đặc biệt, xung quanh dòng 253 - 256. Tôi nghĩ điều đó sẽ giúp bạn.

Nói tóm lại:

module Devise 
    module Models 
    module Confirmable 
     module ClassMethods 
     # Generate a token checking if one does not already exist in the database. 
     def confirmation_token 
      generate_token(:confirmation_token) 
     end 
     end 
    end 
    end 
end 
18
@user = User.new(:email => '[email protected]', :password => 'password') 
@user.skip_confirmation_notification! 
@user.save 

Đây skip_confirmation_notification! tạo mã xác nhận nhưng không gửi email xác nhận.

+0

Đây là câu trả lời đúng – hafichuk

+0

Finaly là câu trả lời hay! Cảm ơn! Làm việc tốt! –

+0

đã lưu ngày của tôi :) –

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