Rails,Devise:以任何没有通过的用户身份登录

时间:2012-04-09 08:43:57

标签: ruby-on-rails devise

我需要一个按钮,无需输入密码就可以登录某个用户。这将由管理员完成。

我该怎么做?或者devise.token_authenticatable是唯一正常的解决方案?

3 个答案:

答案 0 :(得分:3)

您可以使用token_authenticatable,但也有称为sign_insign_out的辅助方法。通过向sign_in提供此用户正在登录的用户对象。

答案 1 :(得分:3)

您可以使用sign_insign_in_and_redirect

class AdminController < ApplicationController
  def my_action

    # Retrieve your user
    user = User.where( :id => [...] )

    # Sign in
    sign_in :user, user

    # Or...
    # sign_in_and_redirect :user, user

  end
end

答案 2 :(得分:2)

您可以使用gem switch_user