Vor dem Hintergrund dieser params:Rails 5 starke params mit einem Array innerhalb Kontrollkästchen Werte
"product"=><ActionController::Parameters {"id"=>"",
"category_ids"=><ActionController::Parameters {"2"=>"1", "3"=>"1", "4"=>"1"} ,
"name"=>"...", "description"=>"a good prod", "size"=>"2x3m", "price"=>"23$", "url_video"=>"http://...", "remarks"=>"bla"}
I Category_ids params { "2" => "1", "3" => "Cath wollen 1 “, "4"=> "1"} mit dem richtigen permit
und require
sintax, als ich weiß nicht:
wenn
params.require(:product).permit(:name, :size,..., category_ids: [])
ausführen
das Ergebnis ist
Unpermitted parameters: id, category_ids
Ich habe params.require(:product).permit(:category_ids[:id,:val])
versucht ... und andere Varianten
was ist die richtige sintax?
PD: Diese params sind das Ergebnis, zum Beispiel:
<input type="checkbox" name="product[category_ids][2]" id="product_category_ids_2" value="1">
<input type="checkbox" name="product[category_ids][3]" id="product_category_ids_3" value="1">
für eine has_and_belongs_to_many
Beziehung
class Product < ActiveRecord::Base
has_many :images, dependent: :destroy
has_and_belongs_to_many :categories, autosave: true
attr_accessor :category_list
end
class Category < ActiveRecord::Base
has_and_belongs_to_many :products
before_destroy :check_products
end
Vielen Dank!
Nach mehr Untersuchungen, fand ich diesen Artikel:
Has Many Through Checkboxes in Rails 3.x, 4.x and 5
Erklärt den guten maners zu diesem Problem und ist für Rails 5, ferner erklärt, wie attr_accessor
nicht notwendig ist,
Können Sie Ihre Produkt- und Kategoriemodelle posten? – oreoluwa
Sicher! Ich bearbeite die Frage –