# Form for several objects

**URL:** <https://discuss.rubyonrails.org/t/form-for-several-objects/22562>\
**Category:** rubyonrails-talk\
**Created:** [January 2, 2008, 7:33pm UTC](https://discuss.rubyonrails.org/t/form-for-several-objects/22562 "2008-01-02T19:33:51Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Eduardo\_Yanez\_Parare](https://avatars.discourse-cdn.com/v4/letter/e/e56c9b/32.png) [@Eduardo\_Yanez\_Parare](https://discuss.rubyonrails.org/u/Eduardo_Yanez_Parare)\
**Post date:** [January 2, 2008, 7:33pm UTC](https://discuss.rubyonrails.org/t/form-for-several-objects/22562/1 "2008-01-02T19:33:51Z")

</div>

Hello, I have an application I did using RoR 1.1.6, now I wanna migrate it to 2.0.2 but I found a problem. Before I had a form like this:

\<%= start\_form\_tag :action =\> 'update', :id =\> @user %\> \<%= error\_messages\_for 'team' %\> \<%= error\_messages\_for 'user\_detail' %\> \<%= error\_messages\_for 'user' %\>

&nbsp;&nbsp;\<!--[form:user]--\> &nbsp;&nbsp;\<p\>\<label for='team\_name'\>Team name\</label\>\<br/\> &nbsp;&nbsp;\<%= text\_field 'team', :name, :size =\> 40 %\>\</p\>

&nbsp;&nbsp;\<p\>\<label for='user\_name'\>Name\</label\>\<br/\> &nbsp;&nbsp;\<%= text\_field 'user\_detail', :name, :size =\> 40 %\>\</p\>

&nbsp;&nbsp;\<p\>\<label for='user\_surname'\>Surname\</label\>\<br/\> &nbsp;&nbsp;\<%= text\_field 'user\_detail', :surname, :size =\> 40 %\>\</p\>

&nbsp;&nbsp;\<p\>\<label for='user\_email'\>e-mail\</label\>\<br/\> &nbsp;&nbsp;\<%= text\_field 'user\_detail', :email, :size =\> 40 %\>\</p\>

&nbsp;&nbsp;\<p\>\<label for='user\_email\_confirmation'\>Confirm e-mail\</label\>\<br/\> &nbsp;&nbsp;\<%= text\_field 'user\_detail', :email\_confirmation, :size =\> 40 %\>\</

> 

&nbsp;&nbsp;\<p\>\<label for='user\_username'\>Username\</label\>\<br/\> &nbsp;&nbsp;\<%= text\_field 'user', :username, :size =\> 40 %\>\</p\>

&nbsp;&nbsp;\<p\>\<label for='user\_password'\>Password\</label\>\<br/\> &nbsp;&nbsp;\<%= password\_field 'user', :password, :size =\> 40 %\>\</p\>

&nbsp;&nbsp;\<p\>\<label for='user\_password\_confirmation'\>Confirm password\</

> \<br/\>

&nbsp;&nbsp;\<%= password\_field 'user', :password\_confirmation, :size =\> 40 %\>\</

> 

&nbsp;&nbsp;\<!--[eoform:user]--\> &nbsp;&nbsp;\<%= submit\_tag 'Edit' %\> \<%= end\_form\_tag %\>

Now, changing the deprecated tag to form\_for I can only reference attributes for User class, but not for Team and UserDetail classes.

In my controller I receive three hashes and I could do this:

&nbsp;&nbsp;&nbsp;&nbsp;@user = User.new(params[:user]) &nbsp;&nbsp;&nbsp;&nbsp;@user\_detail = UserDetail.new(params[:user\_detail]) &nbsp;&nbsp;&nbsp;&nbsp;@team = Team.new(params[:team]) &nbsp;&nbsp;&nbsp;&nbsp;@user.team = @team &nbsp;&nbsp;&nbsp;&nbsp;@user.user\_detail = @user\_detail

How could I do that now?

---

<div class="post-metadata">

**Author:** ![Eduardo\_Yanez\_Parare](https://avatars.discourse-cdn.com/v4/letter/e/e56c9b/32.png) [@Eduardo\_Yanez\_Parare](https://discuss.rubyonrails.org/u/Eduardo_Yanez_Parare)\
**Post date:** [January 2, 2008, 7:41pm UTC](https://discuss.rubyonrails.org/t/form-for-several-objects/22562/2 "2008-01-02T19:41:15Z")

</div>

Well, I think I did a mistake, I have to use form\_tag instead form\_for :). Isn't it?
