让 rails 中的用户和管理员设计应用程序(仅允许管理员访问某些视图)

having users and admins in rails devise app(only allowing access to certain views to admins)

我是新手 rails

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

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

最好的方法是什么?

我应该只向用户 table 添加一个 is_admin 行并创建一个前置过滤器还是有更好的方法?

谢谢

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

如果您需要更复杂的内容,请查看 gem 专家。

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

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

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

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

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

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

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