ruby-on-rails-3 - 管理员用户的 Rails 批量分配

标签 ruby-on-rails-3

我正在使用 rolify 来管理用户角色,当我尝试通过用户表单更新角色时,我收到了:

can't mass-assign protected attributes: role_ids

这令人欣慰,但我想知道,我如何允许管理员通过批量分配更新用户角色,但不允许普通用户这样做?

最佳答案

您可以在 User 模型中使用不同的 attr_accessible 列表:

attr_accessible :name
attr_accessible :name, :role_ids, :as => :admin

然后在您的管理 Controller 的 createupdate 操作中:

User.create(params[:user], :as => :admin)

user.update_attributes(params[:user], :as => :admin)

关于ruby-on-rails-3 - 管理员用户的 Rails 批量分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13298925/

相关文章:

ruby-on-rails - 如何阻止 Rails 为没有 ID 的连接表调用 next_seq?

ruby-on-rails - Rails 在 application.rb 之前的每个请求之前运行代码

ruby-on-rails - 使用 railsinstaller for windows 在 rails 上安装 ruby

validation - 验证两个字段的唯一性,但避免第二个字段为空

ruby-on-rails - 未定义的方法错误单击简单的 webscraper

ruby-on-rails - 显式指定时 Rails 模型外键不起作用

ruby-on-rails - 如何使用 Devise 为 Omniauth 制作自定义登录表单?

ruby-on-rails - 我应该测试什么 "validation logic"?

ruby-on-rails - Ruby on Rails 用于开发实时应用程序?还是 Node.js?

ruby-on-rails - 如何在heroku上从github上拉取插件?