Thanks, Conrad. I did the "depot" tutorial in the Agile Rails book 3rd ed, and the whole pod/screencast on learningrails.com. Both are light on forms. I just downloaded the 3 Mastering Rails Form screencasts, and am going through the first--it's *excellent*. Just knowing about debug params is worth its weight in gold :) I'll go through the first one, try my code again, then if I'm still having trouble, repost. Thanks, Colin & Eric for your patience with this noob :)
On Sep 13, 4:01 pm, Conrad Taylor <[email protected]> wrote: > On Sun, Sep 13, 2009 at 12:30 PM, Dudebot <[email protected]> wrote: > > > Sorry for this basic noob question: > > > I have an "Item" class in my models which corresponds to a SQL table, > > and a "Cart" class and a "CartItem" class which do not. The Item > > class does not have an amount object, which is transitory, so I've put > > this amount object in my CartItem class: > > > class CartItem > > > attr_reader :item, :amount > > > def initialize( item ) > > �...@item = item > > end > > > def set_amount( amount ) > > This.amount = amount > > end > > > end > > > I have a list of items in a viewer form, and I'd like to pass > > associated amount to my CartItem when the user hits the "Add to Cart" > > button. I've tried many variations of text_field and text_field_tag > > in: > > > <% @items.each do |item| %> > > ... > > <%= text_field( :amount , :action => 'set_amount( :amount > > )', :id => > > item )%> > > <%= button_to "Add to Cart" , :action => 'add_to_cart', :id > > => item > > %> > > ... > > <% end %> > > > I know the text_field up there is severely mangled and won't work--but > > it's an example of the 2000th try, the last several hundred out of > > pure desperation. Can anyone help with the proper syntax for the > > text_field in the .html.emb file? > > > The add_to_cart call with the button is working: > > > def add_to_cart > > item = Item.find( params[ :id ] ) > > �...@cart = find_cart > > �[email protected]_item( item ) > > end > > > Many TIA, > > Craig > > The text_field view helper generates an HTML input tag. Thus, there's no > attribute on the input tag called 'action' in the X/HTML spec. > Next, when to use text_field and text_field_tag? > > text_field: if you're creating or updating a model. > text_field_tag: if you're NOT creating or updating a model. > > Thus, I'm guessing that you're simply updating a session variable when > you're performing the > > @cart.add_item( item ) > > If this is the case, then you should use text_field_tag within a form_tag. > You can see > example usage of 'form_tag' and 'text_field_tag' here: > > http://api.rubyonrails.org/classes/ActionView/Helpers/FormTagHelper.h... > > If you are in fact creating or updating a model, then you should use > test_field within a form_for. > You can see examples usage of 'form_for' and 'text_field' here: > > http://api.rubyonrails.org/classes/ActionView/Helpers/FormHelper.html... > > Finally, I would recommend getting access to a copy of "Agile Web > Development with Rails 3rd ed" > and/or obtaining the really great screencasts on the subject, "Mastering > Rails Form", > > http://www.pragprog.com/screencasts/v-rbforms/mastering-rails-forms > > Good luck, > > -Conrad > > > > --~--~---------~--~----~------------~-------~--~----~ 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 [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---

