我是ralis的新手,我正在尝试创建一个调用特定控制器的特定方法的链接,在这种情况下car和方法add_to_cart发送参数,遗憾的是我不知道该怎么做
例如,我想要这样的东西,但即使我是人物角色
= link_to "Add to cart", {:controller => "car", :action => "add_to_cart", :car => car.id }
如果我将其粘贴就好,我会收到错误消息无路由匹配,是否有任何方法可以实现?或者可能是旧格式(我不明白)我想应该是像
=link_to "car", add_to_cart_car_path(@car.id), class: "btn"
还显示错误,
有什么想法吗?
答案 0 :(得分: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'
答案 1 :(得分:0)
您可以将路线添加到routes.rb:
match 'add_to_cart' => 'cars#add_to_cart'
请记住重新启动rails服务器以便识别新路由。