【问题标题】:Logout users with custom devise gem in rails3在rails3中使用自定义设计gem注销用户
【发布时间】:2013-05-08 05:44:03
【问题描述】:

在管理部分,我显示了当前登录用户的列表。现在管理员可以选择一个或多个用户/用户并销毁他们的会话(注销他们)。请帮助我,我上周卡在这里 2 周。我也试过这种方法

 def sign_out_user
      @selected_user = params[:user_ids]
       for ur in @selected_user
      usr= User.find(ur)
      sign_out usr  
     end
    redirect_to "/users/login_history"
end

【问题讨论】:

  • 会发生什么?你有错误吗?他们不退出?你确定params[:user_ids]里面有id吗?
  • 实际上使用此代码后发生了什么,管理员本身仅注销。但是当要中止并检查 user_id 时,id 是不同的。

标签: ruby-on-rails-3 devise ruby-on-rails-3.2


【解决方案1】:

默认情况下,会话存储在客户端的 cookie 中。因此,您不能在不添加某种分代会话密钥等的情况下“注销”用户。 完成“注销”行为的最简单方法是将会话移动到数据库。 例如:http://api.rubyonrails.org/classes/ActiveRecord/SessionStore.html 然后你可以销毁这些对象,用户将被有效地注销。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2019-10-22
  • 1970-01-01
  • 2015-01-04
  • 2013-04-18
  • 2019-08-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多