ruby-on-rails - Rolify 在 Rails 中没有特定的角色检查条件
问题描述
我正在使用 rolify 为用户分配各种角色。像管理员,教授,学生,员工。
我要定义一个条件,我必须指定此特定条件仅对非管理员用户有效。
我知道如何检查用户是否是管理员
u=User.first
u.has_role?(:admin)
但我无法弄清楚如何检查用户没有管理员角色?
请帮我解决这个问题。
解决方案
您可以在用户模型中实现此方法,这意味着用户具有其他角色但没有管理员
def has_not_role?(role)
roles.where.not(name: role).exists?
end
推荐阅读
- python - Python3 - 替换 JSON 对象中的值
- sql - 如何将循环中的多个结果组合到一个临时表中
- python - 在Python中获取当前文件中类中的所有类方法?
- python - 如何大规模比较多个表中的多个字段?
- laravel - 如何使用单个数据库用户表创建两个单独的站点登录/注册
- perl - Perl 使用系统命令删除文件总是返回成功
- flutter - 使用 pdf 包在 PDF 文档中创建动态表格行
- java - 在 JAVA 中使用 recursion 获得不同的结果 StringBuilder 与 String
- ios - 找不到“EXUpdates/EXUpdatesAppController.h”文件
- github - github问题上的红色/绿色感叹号图标是什么意思?