0

我是 ralis 的新手,我正在尝试在调用特定控制器的特定方法的内容中创建一个链接,在这种情况下 car 和方法 add_to_cart 发送参数,不幸的是我不知道该怎么做

例如,我想要这个,但即使我转义字符

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

如果我像这样粘贴它,我会收到一条错误消息No route matches,有什么办法吗?或者可能是旧格式(我不明白)我想应该是这样的

=link_to "car", add_to_cart_car_path(@car.id), class: "btn"

还显示了一个错误,

对此有任何想法吗?

4

2 回答 2

1

假设您有一个名为的资源的路由设置car

resources :cars

您可以通过将成员操作更改为:

resources :cars do
  get :add_to_cart, :on => :member
end

你现在可以写:

= link_to "Add to Cart", add_to_cart_car_path(@car), class: 'btn'
于 2013-05-06T21:03:27.710 回答
0

您可以将路由添加到 routes.rb:

match 'add_to_cart' => 'cars#add_to_cart'

请记住重新启动您的 Rails 服务器以识别新路线。

于 2013-05-06T21:04:00.107 回答