передать параметр по ссылке на ruby on rails
у меня есть эта строка кода:
<%= link_to "Add to cart", :controller => "car", :action => "add_to_cart", :car => car %>
когда im в методе add_to_cart...как я могу позвонить: автомобиль, пожалуйста?
@car = Car.new(params[:car])
это не работает, потому что он говорит, что я пытаюсь его нанизать.
Я не понимаю, что случилось; потому что я использовал это для создания новых пользователей, и он работал нормально.
кстати, автомобиль-это мой объект автомобиля.
4 ответов:
попробуй:
<%= link_to "Add to cart", {:controller => "car", :action => "add_to_cart", :car => car.id }%>а затем в вашем контроллере
@car = Car.find(params[:car])который, найдет в вашей таблице "cars" (как с плюрализацией рельсов) в вашей БД автомобиль с id == to car.id
надеюсь, что это помогает! счастливого кодирования
более чем через год, но если вы это видите или кто-то делает, я мог бы использовать очки ;D
выше не работает для меня, но этой сделал
<%= link_to "text_to_show_in_url", action_controller_path(:gender => "male", :param2=> "something_else") %>
может попробовать так:
<%= link_to "Add to cart", :controller => "car", :action => "add_to_cart", :car => car.attributes %>но мне бы очень хотелось увидеть, где объект car получает настройку для этой страницы (т. е. остальную часть представления).
вы, вероятно, не хотите, чтобы передать
carобъект в качестве параметра, попробуйте просто передаетcar.id. Что вы получаете, когда выinspect(params)после нажатия кнопки "Добавить в корзину"?
Comments