在rails上通过link_to ruby​​传递参数

我有这样的代码行:

<%= link_to "Add to cart", :controller => "car", :action => "add_to_cart", :car => car %> 

当我在add_to_cart方法中…我怎么能打电话给:车?

 @car = Car.new(params[:car]) 

这是行不通的,因为它说我正在尝试将它串起来。

我不明白什么是错的; 因为我用这个来创build新的用户,它工作正常。

顺便说一句,汽车是我的汽车对象。

尝试:

 <%= link_to "Add to cart", {:controller => "car", :action => "add_to_cart", :car => car.id }%> 

然后在你的控制器

 @car = Car.find(params[:car]) 

其中,将在您的“汽车”表(如轨道复数)在你的数据库中findid = 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对象作为parameter passing,只需传递car.id 。 点击“添加到购物车”后,您inspect(params)时会得到什么?