how to get form parameters while using fields_for with nested attributes

hi all… i am trying to use fields_for to get and save nested attributes in a form. i have a ‘Partner’ model associated with an ‘Address’ model. partner has_many :addresses

although the form is displaying fine, but on submitting it the following error is shown:

**can't convert HashWithIndifferentAccess into Array**

on this line: @partner = Partner.new(params[:partner])

the names of main ‘partner’ fields are like:

**partner[par_name]**

the names of ‘address’ fields are like:

**partner[addresses][add_line_1]**

some code:

<% form_for(@partner) do |f| %> <%= f.error_messages %>

<%= f.label :par_name, “Partner Name” %>
<%= f.text_field :par_name %> <% f.fields_for :addresses do |addr_fields| %>

<%= addr_fields.label :add_line_1, “Address Line 1” %>

        <%= addr_fields.text_field :add_line_1 %>
      </p>
  <% end %>

<%= f.submit “Create” %> <% end %>

what’s wrong over here??

regards

Take a look at the complex forms railscasts series (railscasts.com)...

Cheers, Sazima

thanx for the link.. now i am able to save an address along with a partner. but the partner_id (foreign key for partner) inside address table is not getting filled up. do i need to manually put the foreign key, if so how do i do it.