考案するための非常に単純な戦略を追加しようとしていますが、機能していないようです。これが私が使用しようとしているコードです
#config/initializers/devise.rb
Devise.setup do |config|
config.orm = :mongo_mapper
config.warden do |manager|
manager.strategies.add(:auto_login_strategy) do
def valid?
params[:auto_login]
end
def authenticate!
u = User.find(:first)
u.nil? ? fail!("No created users") : success!(u)
end
end
manager.default_strategies(:scope=>:user).unshift :auto_login_strategy
end
end
このコードは、「auto_login」パラメーターのパラメーターをチェックし、存在する場合は、最初にログインできるユーザーを見つけてログインすることになっています。基本的なテストケースを機能させるために、セキュリティ対策を完全にスキップしました。before_filter authenticate_user!
(つまり)を持つコントローラにログインしようとすると、ログインlocalhost:3000/test?auto_login=true
できず、ログイン ページにリダイレクトされます。私は何を間違っていますか?