在管理部分,我显示了当前登录用户的列表。 现在管理员可以选择一个或多个用户/用户并销毁他们的会话(注销他们)。 我无法确定从哪里开始,请帮助我。使用devise gem rails注销用户
回答
你可以通过在用户对象使用sign_out
方法在控制器动作:
# Make sure only admins can do this
def sign_out_user
@user = User.find(params[:id])
sign_out @user
end
此处了解详情:
http://rubydoc.info/github/plataformatec/devise/master/Devise/TestHelpers%3asign_out
考虑用户是收集你的需要的用户,
for user in users
sign_out user
end
它应该解决您的问题。
希望它能帮助:)
它注销管理员而不是用户。 – 2013-04-24 19:04:02
您是否验证过“用户”收藏?它可能是,在'用户'集合中发送的管理对象。 – Prem 2013-04-25 03:28:58
我给用户对象sign_out我也试过abort @ user.to_yaml,它是用户数据,但它注销了管理员 – 2013-04-25 05:05:52
由设计所提供的sign_out
方法也无济于事。我知道文档说它会注销你所要求的“资源”,但如果你自己挖掘这些宝石(设计和监督),你会发现当你给它一个对象,就像用户一样,它只会找出什么该对象所属的作用域(即:user),并将其全部作用域注销。
Devise中的作用域是登录名称空间。您可能有一个需要登录的Customer模型,但也需要一个需要登录的Vendor模型,并且您会为这些模型使用不同的范围。大多数应用程序只使用一个与用户模型绑定的范围。
您可能正在为会话存储使用:cookie_store
,这是Rails的默认设置。在这种情况下,除了您自己之外,不可能注销任何单个用户。 Devise会将您的登录信息存储在会话中,该会话存储在Cookie中,而不是存储在数据库中。他们的浏览器有凭据,所以你不能直接删除它。
- 1. Rails + Devise + API +用户注册
- 2. rails-devise - 无法注销
- 3. 用Devise注销所有用户
- 4. 为什么我不能使用Devise注销用户?
- 5. 无法使用devise gem注销到特定路径?
- 6. 在Rails中用Devise注销特定用户
- 7. 使用devise gem
- 8. Rails devise在注销后从数据库中删除用户
- 9. 如何使用Rails的devise gem自定义用户注册路径?
- 10. 在Rails中使用Devise 3.2.3 - 不能注销
- 11. social_stream如何注册新用户(使用devise gem)?
- 12. 使用devise gem进行rails 4认证
- 13. 当用户注销时使用The_Comments显示注释gem
- 14. Rails - 在哪个操作中使用Devise gem创建新用户?
- 15. ruby-on-rails devise gem
- 16. Rails 3使用devise和best_in_place gem,不会更新订户模型
- 17. 在Rails 4中使用Devise注册新用户
- 18. Rails devise before_destroy用户
- 19. 权限Ruby Gem可以与注销用户一起使用吗?
- 20. 注册用户与Devise注销AdminUser以及
- 21. Rails:注销事件登录用户
- 22. 当并发请求未完成时无法注销Devise用户
- 23. 如何让注册用户使用Devise注册其他用户?
- 24. Rails使用Devise显示在线用户
- 25. Rails/Devise - 如何在“x”分钟不活动之后注销用户?
- 26. 如何让特定用户(不是current_user)在rails-devise网站上注销?
- 27. 如何在devise rails gem中测试guest用户?
- 28. Devise gem用户身份验证Ruby on Rails
- 29. Rails 3 - Devise Gem - 如何通过CRUD界面管理用户
- 30. param丢失或者值为空:用户(devise rails gem)
是否有必要使用用户控制器或任何控制器会做? – 2013-04-24 14:58:40
我会为管理员用户创建一个特定的操作。我会更新我的答案。 – AlexBrand 2013-04-24 14:59:54
这将允许您注销特定用户 – AlexBrand 2013-04-24 15:02:30