【问题标题】:having users and admins in rails devise app(only allowing access to certain views to admins)在 Rails 设计应用程序中拥有用户和管理员(仅允许管理员访问某些视图)
【发布时间】:2015-12-13 01:19:04
【问题描述】:

我是 Rails 新手

我让用户注册并登录到 rails 应用程序。但是,我想将几​​个视图限制为几个指定管理员的用户。

有没有办法通过设计轻松做到这一点?

最好的方法是什么?

我应该在 Users 表中添加一个 is_admin 行并创建一个前置过滤器还是有更好的方法?

谢谢

【问题讨论】:

    标签: ruby ruby-on-rails-4 authentication devise authorization


    【解决方案1】:

    对用户属性的过滤前检查将起作用。对于更复杂的问题,您可以查看一些授权宝石

    CanCanCan 是续集或 Ryan B. 的康康舞。

    The Role,它采用了稍微不同的方法。

    我都用过,对任何一个都没有异议。 希望对您有所帮助!

    【讨论】:

      【解决方案2】:

      在不使用任何 gem 的情况下,您确实有两个简单的解决方案。

      首先是为adminUser 模型添加一个布尔属性,然后将其设置为true 或false,以授予某些用户访问您应用中不同页面的权限。

      第二个是为UserAdmin创建两个独立的Devise模型。

      【讨论】:

        【解决方案3】:

        如果您只想将几个页面限制为管理员,那么最好的办法是在控制器中执行 before 过滤器以检查用户是否为管理员。还要确保在您的应用程序的其他区域中,您为管理员和普通用户正确允许参数。

        如果您需要更复杂的东西,请查看宝石专家。

        【讨论】:

          猜你喜欢
          • 2017-07-28
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多