I have this line of code:
<%= link_to "Add to cart", :controller => "car", :action => "add_to_cart", :car => car %>
when im in the add_to_cart method...how can i call the :car please?
@car = Car.new(params[:car])
That doesn't work because it says that I'm trying to stringify it.
I don't understand what's wrong; because I used this to create new users and it worked fine.
By the way, car is my car object.
This question is related to
ruby-on-rails
parameters
Try:
<%= link_to "Add to cart", {:controller => "car", :action => "add_to_cart", :car => car.id }%>
and then in your controller
@car = Car.find(params[:car])
which, will find in your 'cars' table (as with rails pluralization) in your DB a car with id == to car.id
hope it helps! happy coding
more than a year later, but if you see it or anyone does, i could use the points ;D
Maybe try this:
<%= link_to "Add to cart",
:controller => "car",
:action => "add_to_cart",
:car => car.attributes %>
But I'd really like to see where the car object is getting setup for this page (i.e., the rest of the view).
The above did not work for me but this did
<%= link_to "text_to_show_in_url", action_controller_path(:gender => "male", :param2=> "something_else") %>
You probably don't want to pass the car
object as a parameter, try just passing car.id
. What do you get when you inspect(params)
after clicking "Add to cart"?
Source: Stackoverflow.com