0
我有一个很简单的问题:质量分配选择孩子的,使用设计
用户模式:
class User < ActiveRecord::Base
devise :database_authenticatable,
:recoverable, :rememberable, :trackable, :validatable
attr_accessible :id, :email, :password, :password_confirmation, :remember_me,
:firstname, :lastname, :mobile_phone, :user_type, :department_id, :department_attributes
belongs_to :department
accepts_nested_attributes_for :department, :allow_destroy => false
系车型:
class Department < ActiveRecord::Base
has_many :users
accepts_nested_attributes_for :users, :allow_destroy => true
我创建了一个表格,以便能够使用simple_form从我的现有用户中选择我的部门成员:
<%= simple_form_for @department, :validate => true do |form| %>
<%= form.error_messages %>
<%= form.association :users, :prompt => 'assign a user', :label => 'User'%>
<%= form.button :submit %>
<% end %>
然后我通过部门控制器(尝试)更新我的用户:
def update
@department = Department.find(params[:id])
respond_to do |format|
if @department.update_attributes(params[:department])
...
这会产生以下错误:
WARNING: Can't mass-assign protected attributes: user_ids
我的猜测是,一些设计的设置产生这个错误,但我不知道哪些。
你能帮忙吗?谢谢!
Wouaw,这是诀窍!我被阻止了两个小时,在用户而不是部门中寻找原因。非常感谢! – ndemoreau