I have 2 models. Member and Survey
member.rb as follows
Class Member < ActiveRecord::Base
has_one :survey, :dependent => :destroy
accepts_nested_attributes_for :survey
attr_accessible :fname,:lname, :address, :city, :state, :zip, :email, :phone, :phone_alt, :e_contact, :e_contact_phone, :physician, :physician_phone, :chiropractor, :chiropractor_phone, :password, :password_confirmation, :remember_me, :survey_attributes
end
survey.rb as follows
Class Survey < ActiveRecord::base
belongs_to :member
end
however, whenever I try to create the member with the survey attributes I receive
ActiveModel::MassAssignmentSecurity::Error: Can’t mass-assign protected attributes: surveys
I am testing this via the console.
With a
has_oneassociation the accessible call should read:The params you’re posting need to be nested, like so:
In the form make sure that you’re building the nested relationship correctly, ie. you must use:
If you have those things setup like so it should work. If this isn’t catching your error then please show a log of what you’re trying in the console and isn’t working.
See #accepts_nested_attributes_for in the Rails API for more info.