我有:
<%= button_to '+',{:controller=>"line_items",:action=>'create',:menu_id=> line_item.menu_item,:remote=>true}%>
我为链接添加了相同的代码:
<%= link_to '+',{:controller=>"line_items",:action=>'create',:menu_id=> line_item.menu_item,:remote=>true}%>
但是link_to
会将我重定向到line_item_index页面。我希望link_to能像这个按钮一样工作。请帮助我,我是rails的新手。
答案 0 :(得分:2)
link_to使用http GET作为您正在链接的资源,而button_to使用http POST进行控制器操作。
将:method => :post
显式添加到您的link_to标记使其表现为http POST事件
答案 1 :(得分:0)
方法link_to
创建链接,方法button_to
创建表单。他们不一样。
从button_to
您使用带有方法POST的表单并且它可以正常工作,但是使用link_to
时您正在使用方法GET,这是一个问题。
要解决此问题,请尝试以下操作:
link_to '+',{:controller=>"line_items",:action=>'create', :menu_id=> line_item.menu_item, :remote=>true, method: :post}
更多解释:
http://apidock.com/rails/ActionView/Helpers/UrlHelper/link_to