我是Ror的新人, 我开发了一个应用程序,您可以在其中为产品选择多个类别。 我尝试在我的“产品”表单中添加一个预选类别的多个复选框,但我没有成功显示它。我有一个Category的模型和Product的模型,以及它们之间的连接表。
create_table "categories_products", id: false, force: :cascade do |t|
t.bigint "category_id", null: false
t.bigint "product_id", null: false
我没有成功在表单中显示预先选择的选项复选框。我需要一些帮助。请提前。 这是我的代码: 应用程序/模型/ category.rb:
has_and_belongs_to_many :products, dependent: :destroy
应用程序/模型/ product.rb:
has_and_belongs_to_many :categories
Product Controller.rb:
params.require(:product).permit(:name, category_ids:[ ])
视图/产品/ _form:
<div class="container-fluid">
<%= form_for @product, html: {multipart: true} do |f| %>
<div class="panel-heading">
<h5>Détails projet:</h5>
</div>
<div class="row">
<div class="col-xs-8">
<div class="form-group">
<label>Nom du projet (max. 20 caractères)</label>
<%= f.text_field :name, placeholder: "Nom du projet", class: "form-control" %>
</div>
</div>
<div class="col-xs-4">
<div class="form-group">
<%= f.label "Categorie de projet:" %><br />
<%= f.collection_check_boxes :category_ids, Category.all, :id, :name do |b| %>
<div class=« collection-check-box">
<%= b.check_box %>
<%= b.label %>
</div>
<% end %>
</div>
<div class="actions">
<%= f.submit "Valider le projet", class: 'btn btn-md btn-danger' %>
</div>
<% end %>
答案 0 :(得分:2)
试试这个应该有效的
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="mainBox"></div>
您可以看到API doc了解更多选项