Ruby on Rails基于角色的身份验证系统,如何使用不同的角色?

时间:2014-08-04 15:56:23

标签: ruby-on-rails ruby devise

我使用的是Rails 4.1。我有3种类型的用户,Admin,Leader,Worker,每个都有自己的页面。 我为该角色选择了一个设计+专家,但无法了解如何将用户发送到不同的路径。例如,我如何在sign_in之后将管理员带到管理部分,以及领导者部分的领导者,我可以限制进入某些视图吗?

其他任何宝石都可以帮助解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

不知道宝石。但是这样的事情应该有效:

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_fora callback in Devise