我正在使用一个简单的模型进行用户授权,其中包含两个 ActiveRecords User
,Role
User
并且Role
彼此之间具有 HABTM 关系。
我尝试创建一个用户界面,通过简单的复选框为用户分配角色——就像在Railscasts Episode #17中一样。
我的问题是既不User#new
也不User#update_attributes
使用我的表单提交的参数来更新User
对象与其角色之间的关系。params[:user][:role_ids]
包含正确的值。但是在or@user.roles
之后调用会返回一个空数组。User.new(params[:user])
@user.update_attributes(params[:user])
@user.roles
使用or手动分配角色@user.role_ids
,但不是 or 中的“魔法”。User#new
User#update_attributes
有任何想法吗?