我正在使用 Rails 4.1。我有 3 种类型的用户,Admin、Leader、Worker,每种都有自己的页面。 我已经为该角色选择了一个 devise+pundit,但不知道如何将用户发送到不同的路径。例如,我如何在 sign_in 后将管理员带到管理员部分,将领导者带到领导者的部分,我可以限制对某些 View 的访问吗?
是否有任何其他 Gem 对解决此问题有帮助?
最佳答案
对 gem 一无所知。但是这样的事情应该有效:
class HomeController < ApplicationController
def after_sign_in_path_for(resource)
if current_user.admin?
redirect_to admin_path
elsif current_user.leader?
redirect_to leader_path
else
redirect_to worker_path
end
end
after_sign_in_path_for
是 a callback in Devise .
关于ruby-on-rails - Ruby on Rails 基于角色的身份验证系统,如何使用不同的角色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25122772/