【发布时间】:2015-07-07 23:08:12
【问题描述】:
在 Ruby on Rails 中创建表单时,我遇到了一些奇怪的事情,我的 submit 按钮执行表单中另一个按钮的操作。
<%=form_for(happening) do |f|%>
<%=f.text_field :name, class:"updateInput" %>
<%=f.submit "Save", class:"editButton" %>
<%= button_to "Delete", happening, method: :delete, class:"editButton"%>
<input type="datetime-local" value="<%= happening.get_html_date %>">
<%end%>
当我单击此表单中的submit 按钮时,它将被路由到destroy 操作,而不是update 操作。
当我删除delete按钮时,一切都已正确路由。
有人对此有解释吗?谢谢
【问题讨论】:
-
只需删除表单外的删除按钮。
-
或者你可以把
button_to改成link_to。
标签: ruby-on-rails ruby forms routes