1
我在Ruby on Rails中一些麻煩和我的方法使(產品可以被禁用)。 我創建了一些複選框,以便用戶選擇他想要設置的產品enable = true。 保持返回錯誤 「無法與 'ID' 發現產品= ENABLE」submit_tag與check_box_tag返回錯誤
我的方法enable
:
def enable
Product.update_all(["enable=?", true], :id => params[:selected_products])
redirect_to root_url
end
我routes.rb
:
Rails.application.routes.draw do
get 'product_export/new'
get 'product_imports/new'
resources :users
resources :product_imports
resources :products do
collection do
post :import
post :export
post :enable
end
end
root to: 'products#index'
end
,最後我view
與表e check_box_tag:
<%= form_tag enable_products_path, :method => :put do %>
<%= submit_tag "Enable products" %>
<table class="table table-striped table-responsive" id="productsTable">
<thead class="thead-inverse">
<tr>
<th/>
<th>Code</th>
<th>Enable</th>
<th>Bar code</th>
<th>Unit cost</th>
<th>Description</th>
<th>Family</th>
<th>Final</th>
<th>Measure</th>
<th colspan="3"></th>
</tr>
</thead>
<tbody>
<% @products.each do |product| %>
<tr>
<td><%= check_box_tag 'selected_products[]', product.id %></td>
<td><%= link_to (product.code), edit_product_path(product) %></td>
<td><%= product.enable %></td>
<td><%= product.bar_code %></td>
<td><%= product.unit_cost %></td>
<td><%= product.description %></td>
<td><%= product.family %></td>
<td><%= product.final %></td>
<td><%= product.measure %></td>
<td><%= link_to 'Destroy', product, method: :delete, data: { confirm: 'Are you sure?' } %></td>
</tr>
<% end %>
</tbody>
</table>
<% end %>
感謝您的幫助!
檢查什麼URL在控制檯打。我認爲這是產品/啓用權? – krishnar
顯示此操作的一部分rails日誌(log/development.log)。 –