Rails表单提交操作类似于link_to

时间:2018-08-28 18:58:17

标签: ruby-on-rails

所以最终我要做的是将表单分为两个不同的列,状态位于一列中,而保存按钮位于link_to旁边的另一列中,或者让表单的提交操作像链接到。表单会自动应用一些CSS,这会导致表单拆分问题。

  <tbody>
    <% @training_resource.spud_users.each do |training| %>
      <tr>
        <td><%= training.full_name %></td>
        <% utr = training.user_training_resources.where(training_resource: @training_resource).first %>
        <td class="utr-form">
         <%= tb_form_for [:admin, utr], url: admin_update_utr_path(utr), :remote => true, :html => {:id=>'form_id'}, :data => {:errors => :inline, :success => admin_training_resources_path} do |f| %>
           <%= f.select :status, UserTrainingResource.statuses.map {|k,v| [k.humanize, k]}, selected: utr.status %>

       </td>
        <td class="table-actions">
           <%= f.tb_save_buttons('', admin_update_utr_path(utr)) %>
         <% end %>
           <%= link_to 'submit', admin_update_utr_path(utr), :onclick => "$('#form_id').submit()" %>
           <%= link_to 'Delete', admin_destroy_utr_path(utr), :method => :delete, :data => {:confirm => 'Are you sure you want to delete this?'}, :class => 'btn btn-danger btn-sm'  %>
        </td>
      </tr>
    <% end %>
  </tbody>

所以我想弄清楚的是,是否有一种方法可以将表单保存按钮更改为link_to。现在我在link_to'submit'下有它。但是,它无法像tb_save_button一样操作,因为它无法重定向到正确的位置或保存。

1 个答案:

答案 0 :(得分:0)

您可以在控制器中进行处理。

(example)
def create
  if utr.save
    redirect_to admin_update_utr_path(utr)
  else
    # render new form or display the previous view
  end
end