【发布时间】:2021-02-15 21:30:49
【问题描述】:
我有一个模型 Landings 和一个模型 Products。
有一个has_many_and_belongs_to_many 关联,有一个连接表landings_products。
我希望能够从创建和编辑landing 表单中添加各种products。
我添加了一个这样的选择,其中包含可选择产品的下拉列表,但我只能为每个着陆选择一个产品,并且我希望能够添加尽可能多的产品:
<%= form_with(model: landing, local: true) do |form| %>
<%= select_tag("landing[product_ids][]", options_from_collection_for_select(Product.all, :id, :name)) %>
<%= form.submit "Crear landing page", class: "btn btn-primary" %>
<% end %>
另外,我已将着陆控制器中的 product_id 列入白名单。
¿如何从同一个表单中为我的模型添加多个产品?
非常感谢
【问题讨论】:
-
如果您想允许多项选择,您的选择需要选择
multiple: true,通常加上一个“大小”,以便显示多个项目。但是,请参阅下面的 obiruby 的回答,因为collection_check_boxes几乎可以肯定是更好的 UI 选择。
标签: ruby-on-rails ruby