Rolify一次分配多个用户角色

时间:2017-07-14 21:48:30

标签: ruby-on-rails rolify

对于Rails中的Rolify gem,为了向用户添加角色,您可以这样做:

user = User.find(1)
user.add_role :admin

但是我有一个没有角色的现有用户的大型数据库。如何使用单个命令向多个用户添加角色?

我尝试了下面的代码片段但错误了:

users = User.where(email:['email1','email2'])
users.addrole :admin

有谁知道怎么做?或者我是否需要创建一个自动循环用户并逐个分配角色的脚本?

1 个答案:

答案 0 :(得分:0)

Rolify主要是一个快速而肮脏的角色系统,它目前不提供此功能。

您必须将自己的批量插入/ upsert查询写入Rolify持久保存数据的数据库表中,例如: (roles表格的users_rolesusers