Rails 3嵌套模型未知属性错误



我收到UnkownAttributeError没有特殊原因,我的模型似乎设置正确。。。

学校.rb

class School < ActiveRecord::Base
attr_protected :id, :created_at, :updated_at
#relationships
has_many :users
accepts_nested_attributes_for :users
end

我的学校模型曾经有以下内容,但它为用户字段生成了MassAssignmentSecurity错误:

attr_accessible :country, :name, :state_or_province, :users_attributes

用户.rb

class User < ActiveRecord::Base
attr_accessible :email, :password, :password_confirmation, :remember_me, :username, :instructor_id, :first_name, :last_name, :school_id
#relationships
belongs_to :school
end

new.html.haml

= simple_form_for @school do |f|
.well
= f.input :name, :as => :hidden
= f.input :country, :as => :hidden
= f.input :state_or_province, :as => :hidden
.well
= f.simple_fields_for @school.users.build do |user_form|
= user_form.input :first_name, :required => true
= user_form.input :last_name, :required => true
= user_form.input :username, :required => true
...
= f.button :submit, "Next"

注意:@school是根据上一页收集的会话信息填充到我的新操作中的,我正在制作一个多步骤表单。学校数据是完全有效的,如果我删除用户表单,保存学校不会有问题。

我在创建操作中收到的特定错误消息:

ActiveRecord::未知属性SchoolsController#create中的错误

未知属性:用户

发送的参数看起来有点像这样:

{"school"=>{"name"=>"Elmwood Elementary","country"=>"38","state_or_province"=>"448","user"=>{"first_name"=>"joe","last_name"=>"asdas","username"=>"asasdas","电子邮件"=>"asdasd@sdas.ca","password"=>"[FILTERED]","password_conconfirmation"=>"[FILTERED]"}},"commit"=>"Next"}

这可能是Devise或simple_form的错误吗?我使用的是Rails 3.2.3

好的,所以显然我需要提供符号:users——关系的名称,作为它工作的第一个参数。

最新更新