限制Rails admin gem的访问

问题描述

我有rails admin gem,可以查看我的应用程序的用户友好型数据库在这数据库中,我有很多库,我想知道是否有一种方法,只有某些管理员才能访问某些库。 例如,具有电子邮件library123@admin.com的管理员用户只能在rails admin数据库中查看来自库123的详细信息,因此该管理员只能访问URL。 https://my-app.com/admin/library/35而非https://my-app.com/admin/libraryhttps://my-app.com/admin

我使用devise向Rails管理员进行身份验证,并且不使用任何gem进行授权。

我当时想向用户添加与库相关的列,以了解每个用户属于哪个库,但是,我一直在想如何对Rails管理员说只允许查看该用户所属的库

解决方法

假设您已经在用户模型中实现了#admin?(或类似功能):

  authenticate :user,->(user) { user.admin? } do
    # mount your restricted routes
  end

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...