首页 > 解决方案 > 在 Ruby 中的表单内调用另一个控制器

问题描述

在我的应用程序中,用户可以从某种形式保存提单,或者将相同的对象发送到另一个控制器。

我的表格是这样的:

<%=content_for :detail do%>
  <%=form_for @bill_of_lading,:url => bill_of_ladings_path(),:html=>{:class=>"form-horizontal bol-form"} do |f|%>
    <%= render :partial => 'bill_of_ladings/form', :locals => {:f => f} %>
    <div class="form-actions">
      <%= button_to 'Create Draft', {:controller => "drafts", :action => "create", :bill_of_lading => @bill_of_lading }, :method=>:post ,:class=>"btn btn-warning"%>
      <%=f.submit "Create Bill of Lading", :class=>"btn btn-primary","data-loading-text"=>"Saving..."%> or <%=link_to "cancel",bill_of_ladings_path,:class => "btn"%>
    </div>
  <% end %>

<% end %>

我希望,当用户按下“创建草稿”按钮时,数据被发送到DraftsControllercreate 方法,传递@bill_of_lading对象。

但是当我按下“创建草稿”按钮时,它会转到默认的提交按钮(在本例中为bill_of_laddings_path)。

那么,如何让“创建草稿”按钮按我的意愿工作?(调用另一个控制器,但将数据作为参数传递)

谢谢

标签: ruby-on-rails

解决方案


推荐阅读