0
我有一个面板与许多注册用户。我想为每个用户提供一个链接,当我点击该链接时,我登录该帐户,而无需密码。 正如经销商系统一样。经销商管理员登录客户账户的账户(Parallels Plesk做到这一点)。登录与设计 - 登录帐户点击链接
所有用户都在Devise注册。 这可能吗?
我有一个面板与许多注册用户。我想为每个用户提供一个链接,当我点击该链接时,我登录该帐户,而无需密码。 正如经销商系统一样。经销商管理员登录客户账户的账户(Parallels Plesk做到这一点)。登录与设计 - 登录帐户点击链接
所有用户都在Devise注册。 这可能吗?
是的。这是可能的。只需调用您调用的为用户创建会话的相同方法即可。该链接会像(你需要确保你正在使用的一个路径一致):
<a href="https://stackoverflow.com/users/sign_in_as_user/<%= user['user_id'] %>" class="btn btn-default btn-xs">Sign In</a>
与控制器是这样的:
def sign_in_as_user
if current_user.admin?
user = User.find(params[:user_id])
sign_in(user)
redirect_to '/wherever'
else
redirect_to '/'
end
end
对不起延迟,我忘了反馈。您的解决方案完美无缺,谢谢!我只增加了一个参数。一个安全的哈希,与用户数据的复杂组合。有了这个,在这个URL中尝试了Id的人不能访问,因为需要更多信息 –
太棒了!很高兴帮助。 – toddmetheny