如何使用AuthLogic模拟用户

Sam*_*ron 6 ruby ruby-on-rails authlogic

我需要能够在没有解密密码的情况下创建UserSession.

我该怎么做呢?

我目前的解决方法是:

在user.rb中

def valid_crypted_or_non_crypted_password?(password) 
   valid_password?(password) || password == crypted_password
end
Run Code Online (Sandbox Code Playgroud)

在user_session.rb中

verify_password_method :valid_crypted_or_non_crypted_password?
Run Code Online (Sandbox Code Playgroud)

登录

UserSession.create(:login => u.login, :password => u.crypted_password) 
Run Code Online (Sandbox Code Playgroud)

有没有更好的方法来做到这一点?

rya*_*anb 12

根据文档,您可以将用户对象传递给UserSession.create.

UserSession.create(@some_user)
Run Code Online (Sandbox Code Playgroud)

我没有尝试过.