如何在Rails 3中为formtastic创建多个提交按钮?

时间:2011-06-12 19:57:32

标签: ruby-on-rails-3 button formtastic

我有一张表格,正在使用Formtastic。我希望按钮有两个选项,并存储在新创建的记录中选择的值。

我会做这样的事吗?

<%= form.buttons do %>
  <%= form.commit_button :value => "Give" %>
  <%= form.commit_button :value => "Request" %>
<% end %>

2 个答案:

答案 0 :(得分:3)

commit_button()将第一个参数作为String,或者,为了匹配input() API,它还接受:label选项。这两个在功能上是等价的:

<%= f.commit_button :label => "Save" %>
<%= f.commit_button :label => "Save and Continue Editing" %>

<%= f.commit_button "Save" %>
<%= f.commit_button "Save and Continue Editing" %>

还没有用于取消按钮,重置按钮等的API。您还可以使用标准的Rails助手,例如link_to,并在它们周围添加一些标记:

<%= f.buttons do %>
  <%= f.commit_button :label => "Save" %>
  <li class="cancel">
    <%= link_to "Cancel", foos_path %>
  </li>
<% end %>

答案 1 :(得分:0)

commit_button已从api中删除。我通过在button_html中设置按钮的名称和值来实现这一点。

f.actions do
  f.action :submit, :as => :button
  f.action :submit, :as => :button, label: 'Save and Next', button_html: {name: 'boo', value: 'bah'}
  f.action :cancel, :as => :link, label: 'Cancel', class: 'cancel', wrapper_html: {class: :cancel}
end