Ruby on rails &引用;没有与[POST]匹配的路线”;将链接更改为按钮时
我有一段代码:Ruby on rails &引用;没有与[POST]匹配的路线”;将链接更改为按钮时,ruby-on-rails,button,hyperlink,Ruby On Rails,Button,Hyperlink,我有一段代码: <%= link_to "New User", new_user_path, :class => "button" %><br /> “按钮”%> 这很好,但当我把它改成 <%= button_to "New User", new_user_path, :class => "button" %><br /> “按钮”%> 我得到这个错误 没有与[POST]“/users/new”匹配的路由 如果您有任何帮助,
<%= link_to "New User", new_user_path, :class => "button" %><br />
“按钮”%>
这很好,但当我把它改成
<%= button_to "New User", new_user_path, :class => "button" %><br />
“按钮”%>
我得到这个错误
没有与[POST]“/users/new”匹配的路由
如果您有任何帮助,我们将不胜感激。此“链接”正在使用GET查找/users/new
“按钮”正在使用POST
如果使用以下方法为控制器创建路由:
resources :user
默认情况下,/users/new是GET而不是POST,因此第二行找不到任何路由
如果您想将该操作更改为POST,我认为您应该忘记它 按钮默认为POST,链接默认为GET,这就是链接有效的原因。您可以强制按钮_使用GET:
<%= button_to "New User", new_user_path, :class => "button", :method => :get %>
“按钮”,:方法=>:获取%>
您可以在此处获得有关按钮选项的更多信息:Jesus Rodriguez关于POST和get的观点是正确的,但是如果您确实需要按钮,您可以简单地覆盖默认方法:
<%= button_to "New User", new_user_path, :class => "button", :method => :get %>
“按钮”,:方法=>:获取%>
您也可以发送一个类来链接,而不是强制按钮使用非默认方法
<%= link_to "New User", new_user_path, :class => "button" %>
“按钮”%>
若要添加,您可以向其添加类,使其“看起来”像一个按钮(如上面的答案所示)。在我的例子中,我正在使用引导,并执行了以下“btn btn default”%>