当我的应用程序中的用户不是管理员用户时,我只想让他们看到他们拥有的字段。
在每个字段的基础上是否有这样的设置can :see
或类似的设置,以便它只显示使用“可以看到”的字段,或者我应该有能力调用can :oversee
来声明他们可以看到所有内容。
我想在 rails admin 中检查用户是否是管理员要容易得多,所以将 rails admin 设置为仅提取当前用户的记录。
当我的应用程序中的用户不是管理员用户时,我只想让他们看到他们拥有的字段。
在每个字段的基础上是否有这样的设置can :see
或类似的设置,以便它只显示使用“可以看到”的字段,或者我应该有能力调用can :oversee
来声明他们可以看到所有内容。
我想在 rails admin 中检查用户是否是管理员要容易得多,所以将 rails admin 设置为仅提取当前用户的记录。
使用 cancan,您可以检查对象的权限,如下所示:
if can?(:read, order)
# do something!
end
if can?(:email, order)
# do something!
end
但这仅指对象级别的可见性。
在 RailsAdmin 中,您可以通过传入块来设置字段可见性,如下所述。
例如:
RailsAdmin.config do |config|
config.model Order do
list do
field :name
field :profit do
visible do
current_user.roles.include?(:admin)
end
end
end
end
end