为什么我不能让我的button_to指定我的控制器的创建动作而不是显示
我已多次尝试添加:action => “创建”和其他类似的东西到button_to参数
<%= button_to "subscribe", subscription_path(feed_url: @feed.feed_url)%>
我需要在routes.rb中指定创建路由吗?如果是这样我该怎么办呢?
当使用该行的方式时,我在加载时出现此错误:
路由错误
没有路线匹配{:action =&gt;“show”,:controller =&gt;“subscriptions”,:feed_url =&gt;“http://foo.com/rss”}
在routes.rb中我将此作为订阅的唯一引用。
resource :subscriptions
答案 0 :(得分:3)
您需要使用subscriptons_path
,而不是subscription_path
。
subscription_path
用于显示特定订阅
subscriptions_path
用于显示所有订阅(通过GET请求)或创建新订阅(通过POST请求)。
<%= button_to "subscribe", subscriptions_path(feed_url: @feed.feed_url, :method => :post)%>