如何在form_tag中为Rails 3.2使用默认操作?

时间:2014-10-31 23:20:50

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

我们需要在form_tag控制器的操作new视图中使用checkouts。这是视图代码:

<%= form_tag create_checkout_path, :method => :put do %>
<table class="table table-striped">
  <tr>
     <th></th>
     <th><%= t('Stock#') %></th>
     <th><%= t('Name') %></th>
     <th><%= t('Item Spec') %></th>
     <th><%= t('Stock Qty') %></th>
     <th><%= t('Out Qty') %></th>
  </tr>

<% @item_in_stock.each do |i| %>

      <tr>
        <td><%= check_box_tag 'ids[]', i.id %></td>
        <td><%= i.name %></td>
        <td><%= i.item_spec %></td>
        <td><%= i.stock_qty %><%= i.unit %></td>
        <td><%= text_field_tag 'out_qtys[]', '', placeholder: t('Enter checkout qty'), size: '10' %></td>                   
      </tr>

<% end %>

这是在routes.rb:

resources :checkouts

上面的视图代码返回错误,指出没有定义create_checkout_path。我们知道如何为form_tag定义自定义操作。但是我们可以在form_tag中使用RAILS默认路由吗?我们想使用Rails默认操作而不是定义我们自己的操作。非常感谢。

1 个答案:

答案 0 :(得分:1)

更改

<%= form_tag create_checkout_path, :method => :put do %>

<%= form_tag checkouts_path, :method => :post do %>