По какой-то причине мой simple_form код вставкиПростой формы объединения, создающие пустое поле ввода
<input name="order[product_ids][]" type="hidden" value="">
по форме
<label class="checkbox">
<input class="check_boxes optional" id="order_product_ids_11"
name="order[product_ids][]" type="checkbox" value="11">Product11
</label>
Когда я использую мою форму has_and_belongs_to_many ассоциация
<%= f.association :products, as: :check_boxes, include_blank: false %>
с моделью Приказы
class Order < ActiveRecord::Base
belongs_to :user
has_and_belongs_to_many :products
и изделия
class Product < ActiveRecord::Base
has_and_belongs_to_many :orders
, который вызывает ошибку:
ActiveRecord::RecordNotFound in OrdersController#create
Couldn't find all Products with IDs (3, 5,) (found 2 results, but was looking for 3)
{"utf8"=>"✓",
"authenticity_token"=>"F0c4J81QXRNMFDXrN55XrRafwj86lzUl3kXe/xXxKxc=",
"order"=>{"order_type"=>"init_purchase",
"shipping_status"=>"unshipped",
"product_ids"=>["3",
"5",
""]},
"commit"=>"Create Order"}
, потому что она проходит пустое значение для одного из продуктов. Когда я вручную удаляю пустое поле ввода без значения, у него нет проблемы.
Спасибо, никогда бы не нашел это. Хотя, я все еще смущен, если предыдущая функция. является признаком или ошибкой. – maschwenk
Как использовать эту функцию ': include_hidden' с помощью simple_form, чтобы избежать этой проблемы с« пустым идентификатором »? –
Как люди справлялись с этим в Rails 3.2.14? Не удается выполнить миграцию до Rails4. – codeObserver