通过Form使用Rolify以及Devise和Cancan动态添加角色
我只是按照教程“ https://github.com/EppO/rolify/wiki/Tutorial ”非常好,工作正常。 但我的问题不能通过表单添加角色而不使用Rails控制台。
Role列连接到角色表(Rolify Roles)
这是我的角色.rb
class Role <ActiveRecord :: Base
has_and_belongs_to_many:users,:join_table =>:users_roles
belongs_to:resource,:polymorphic => true
User.rb
class User <ActiveRecord :: Base
belongs_to:account,:inverse_of =>:users
validation:account,:presence => true
rolify
attr_accessible:role_ids
#包括默认设计模块。 其他可用的是:#:确认,:可锁定,:超时和:omniauthable
设计:database_authenticatable,:registerable,:recoverable,:rememberable,:trackable,:validatable
#为您的模型设置可访问(或受保护)属性
attr_accessible:email,:password,:password_confirmation,:remember_me,:role_ids
#attr_accessible:title,:body
has_many:auditinits
结束
任何帮助都很感激!!
在“ 用户表单”中 ,选择“下拉”选择角色,
<%= user_form.select :role,options_from_collection_for_select(Role.all,"name","name) %>
修改用户控制器中的创建操作
@user = User.new(user_params) @user.add_role params[:user][:role]