在我的 RoR 应用程序中,我使用 Role Model 和 CanCan gems。用户没有默认角色。在我为用户分配角色之前,role_mask 为空。我可以分配多个角色。但我无法删除所有角色并将roles_mask 再次设为nil。最后分配的角色仍然存在 我需要删除以前分配的角色,全部!可能吗??
问问题
548 次
1 回答
3
如果您想让单个用户角色为零,那么在您的角色中修改操作就像
user.roles_mask = nil
并保存
如果你想让所有的角色掩码为零,那么你可以通过编写一个 rake 任务来做到这一点。就像是
task :make_roles_nil => :environment do
User.all.each do |user|
user.roles_mask = nil
user.save
end
end
将其放入 lib/tasks 目录中一个名为 user.rake 的文件,然后运行
bundle exec rake user:make_roles_nil RAILS_ENV = YOUR ENVIRONMENT(development or production)
于 2013-04-23T09:24:23.417 回答