我创建了2个名为products and brands的表,并通过迁移创建了一个名为brands_products的连接表。
在每个模型中,我编写了相应的has_and_belongs_to_many设置。
如果表单中包含以下代码:
<%= form_for(@product) do |f| %>
<% if @product.errors.any? %>
<div id="error_explanation">
<h2><%= pluralize(@product.errors.count, "error") %> prohibited this product from being saved:</h2>
<ul>
<% @product.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
</ul>
</div>
<% end %>
<div class="field">
<%= f.label :name %><br />
<%= f.text_field :name %>
</div>
<div class="field">
<%= f.label :brand %><br />
<%= f.text_field (what to write?) %>
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
我不知道如何直观地为产品添加品牌,就像Rails通常的工作方式......任何想法?
答案 0 :(得分:0)
您可能需要查看accepts_nested_attributes_for。您还需要查看fields_for。如果没有看到更多的数据模型,很难给出详细的答案。
通常,它看起来像:
<%- f.fields_for :brands do |m| -%>
<%= m.text_field :name %>
<%- end -%>