我有两个使用 Devise 的模型用户和管理员(使用 RailsAdmin)。我以用户身份登录,然后以管理员身份登录。但是从其中一个模型中退出的结果是同时退出两个模型。我该如何解决?请帮忙 :)
问问题
3412 次
2 回答
24
问题出在config/initializers/devise.rb中的一个字符串中:
默认:
# 配置sign_out行为。
# Sign_out 操作可以限定范围(即 /users/sign_out 仅影响 :user 范围)。
# 默认为 true,这意味着任何注销操作都会注销所有活动范围。
# config.sign_out_all_scopes = true需要:
config.sign_out_all_scopes = false
于 2012-03-24T07:03:39.640 回答
0
Devise 的范围是整个应用程序——您登录到站点,而不是模型。也许您想添加角色的区别——一个用户可能有一个或多个角色,允许他们某些特权。设计只是为您提供经过身份验证的用户。考虑一个像CanCan这样的 gem,它提供对“基于角色的授权”的支持。
于 2012-03-21T21:38:44.557 回答