try this.
<%= n.select :purchase_item_id, PurchaseItem.all.collect {|a| [a.name,
a.id] }, @recipe.purchase_item.id %>
Havent tested it so it may or may not work.
On Mar 18, 7:44 am, Andy
<andy.bo...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
wrote:> Hello,
> I wish I had the time to figure this out but I''m on a limited
timeline
> to convince people to look at RoR instead of Drupal, so I need to get
> something relatively simple working fast. Any help or pointers would
> be appreciated!
>
> I have two HABTM many models, recipe_item and purchase_item. I need a
> form to designate in my view that any number of purchase_items or
> recipe_items can be a component of a given recipe_item. It looks like
> Ryan Bates'' screencast on nested model forms provides a lot of
help on
> a similar issue, but I''m having trouble picking apart the logic
for my
> issue. Regardless at the moment as a test I''m just trying to get a
> single select on the recipe_item view to submit the purchase_item
> association. When I submit I get this error:
>
> PurchaseItem(#20112400) expected, got Array(#102050)
>
> Here is my code:
>
> Models:
>
> class PurchaseItem < ActiveRecord::Base
> has_and_belongs_to_many :recipe_items
> end
>
> class RecipeItem < ActiveRecord::Base
> has_and_belongs_to_many :purchase_items
> end
>
> Controllers are left completely as generated by 2.3 Rails scaffolding.
>
> New recipe_item View:
>
> <h1>New recipe_item</h1>
>
> <% form_for(@recipe_item) do |f| %>
> <%= f.error_messages %>
>
> <p>
> <%= f.label :name %><br />
> <%= f.text_field :name %>
> </p>
> <p>
> <% f.fields_for :purchase_items do |n| %>
> <%= n.label :purchase_item_id %>
> <%= n.select :purchase_item_id,
PurchaseItem.all.collect {|a|
> [a.name, a.id] }%>
> <% end %>
> </p>
> <p>
> <%= f.submit ''Create'' %>
> </p>
> <% end %>
>
> <%= link_to ''Back'', recipe_items_path %>
>
> I''m aware this can be DRYed up but like I said right now I just
need
> to demonstrate something working for my team. Any help would be
> appreciated!
>
> Thanks,
> Andy
--
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Talk" group.
To post to this group, send email to
rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-talk+unsubscribe@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en.