具有多个Admin-ish角色的视图

时间:2009-10-04 18:21:07

标签: ruby-on-rails model-view-controller

我有一个应用程序,其中有多个“Admin-ish”角色。想象一下,你有一个可以编辑任何东西的超级管理员,还有一个可以编辑有关他网站的任何信息的网站管理员。

因此,admin / sites和siteadmin / sites基本上都是完全相同的视图。

正确的设置方式是什么(视图/控制器)?我想尽可能保持干燥。

1 个答案:

答案 0 :(得分:0)

我是Rails Authorization插件的忠实粉丝

这使您可以轻松地将角色分配给对象并使用块来授予访问权限。

@a.has_role('admin')
@b.has_role('super_admin')

permit "admin or super_admin' do
  # Show admin and super_admin stuff
end

permit 'super_admin' {}

您还可以授予其他对象或类的访问权限。

@user.has_role('photographer', @photo)
@user.has_role('news_poster', NewsPost)
相关问题