[repost] newbie questions


#1

Hi all,

I’m following the shop example in ‘Agile Web D. with Rails’.

I would like to extend the checkout screen, in such a way people can
change
the number of items they have selected in there cart.

In my controller I have:

def checkout
@cart = find_cart
@items = @cart.items
if @items.empty?
redirect_to_index(“There’s nothing in your cart!”)
else
@order = Order.new
@address = Address.new
end
end

I also created the following checkout.rhtml file:

<% @page_title = “Checkout” -%>

<%= error_messages_for(:order) %>

<%= start_form_tag(:action => “update_order”) %>

<%= render(:partial => 'orderitem', :collection => @items) %>

<%= submit_tag “Update” %>

<%= end_form_tag %>

Finally I created the following partial:

<% product = orderitem.product %>

<%= check_box 'orderitem', 'delete', 'index' => orderitem_counter %> <%= text_field 'orderitem', 'quantity', 'value' => orderitem.quantity, 'index' => orderitem_counter, :size => 4 %> <%= product.brand %> <%= product.title %>

Now when the user submits the form, I would like to read the quantity
for
each line_item and update my cart accordingly. Also, if the checkbox is
checked I would like to delete the line_item from the cart.

I have no clue how to do this in my controller…

Can you give me a hint?

Regards,

Harm de Laat


#2

Can somebody please comment on this? I’m realy stuck on this, and would
like
to move on…

Many thanks in advance!

Regards,

Harm de Laat


#3

On 26 Dec 2005, at 10:47, Harm de Laat wrote:

I have no clue how to do this in my controller…

Can you give me a hint?

Loop through the collection that’s submitted, check if the delete
button is checked and delete the item if so. If not then update the
item quantity. What part are you getting stuck on?

Yours,
Craig

Craig W. | t: +44 (0)131 516 8595 | e: removed_email_address@domain.invalid
Xeriom.NET | f: +44 (0)709 287 1902 | w: http://xeriom.net