associating an array to multiple text fields in a form

R

robertlaferla

I have a model that has the following classes: ShoppingList, Item and Product.

-- *Product* is just a list of product names: Apple, Orange, Banana, Pear,
Grape. The table has two columns: ID and NAME.

-- A *ShoppingList* has a name (string) and many *Item* objects.

-- Each *Item* has a *quantity* (integer) and to-one relationship to a
*Product*.

My ShoppingList's edit view has a form that contains a textfield for the name of
a shopping list and a table of items and their quantities:

Name: MyShoppingList

Qty. Item
3 Apples
0 Oranges
1 Pear

The model object for this view is, of course, a ShoppingList.

I am trying to bind each text field to the quantity attribute of each item in the shopping list. I tried something like this but it doesn't work because Rails wants an instance variable to bind to. How do I properly bind my array?

<% @shopping_list.items.each do |item| %>
<tr>
<td><%= text_field("shopping_list.items[" + item.id.to_s + "].quantity",
item.quantity, :size => 3) %></td><td><%= (Product.find
item.product_name_id).name%></td>
</tr>
<% end %>
 
R

Robert La Ferla

I meant to post this to the Rails mailing list not this one. Sorry.
Please don't respond to the list but rather to me personally.

Thanks.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,009
Latest member
GidgetGamb

Latest Threads

Top