根据用户类型有不同的视图

时间:2011-11-15 00:53:33

标签: ruby-on-rails routes

我有一个具有几种不同类型的用户模型,即有一个用户属性设置为usertype1,usertype2或usertype3。如何根据用户类型将用户路由到其他页面?我正在使用设计进行身份验证。

1 个答案:

答案 0 :(得分:1)

如果您想在登录后重定向用户,请检查此devise wiki。具体代码是

# app/controllers/application_controller.rb

def after_sign_in_path_for(resource)
  if usertype1?
    some_url
  elsif usertype2?
    another_url
  elsif usertype3?
    some_other_url
  end
end

但是,如果您要查找的内容更通用,那么您可能希望定义角色并根据用户的角色授予用户访问网站某些部分的权限 - 也称为授权。为此,我建议使用cancan。如果您想了解更多信息,还可以观看railscast episode

修改

另见so question