Ruby on rails 在Rails 5.1中,显示对象名称来自has_和属于多个联接表
我有一个Ruby on rails 在Rails 5.1中,显示对象名称来自has_和属于多个联接表,ruby-on-rails,ruby-on-rails-5,Ruby On Rails,Ruby On Rails 5,我有一个产品模型和一个标签模型,在中与联接表有很多关系,并且属于很多关系。我的标记有一个名为name的字符串列 一切正常,但在我的产品索引视图中,我想列出与产品相关的所有标记。因为它在一个join_表中,我不知道如何创建桥来获取标记名;我能做的就是列出所有的标签ID products/index.html.erb <% @products.each do |product| %> <tr> <td><%= product.name %>
产品
模型和一个标签
模型,在中与联接表
有很多关系,并且属于很多关系。我的标记有一个名为name
的字符串列
一切正常,但在我的产品索引视图中,我想列出与产品相关的所有标记。因为它在一个join_表中,我不知道如何创建桥来获取标记名;我能做的就是列出所有的标签ID
products/index.html.erb
<% @products.each do |product| %>
<tr>
<td><%= product.name %></td>
<td><%= product.tag_ids %></td>
...
</tr>
<% end %>
class Tag < ApplicationRecord
has_and_belongs_to_many :products
...
end
class Product < ApplicationRecord
...
has_and_belongs_to_many :tags
...
end
...
标记.rb
<% @products.each do |product| %>
<tr>
<td><%= product.name %></td>
<td><%= product.tag_ids %></td>
...
</tr>
<% end %>
class Tag < ApplicationRecord
has_and_belongs_to_many :products
...
end
class Product < ApplicationRecord
...
has_and_belongs_to_many :tags
...
end
class标记
product.rb
<% @products.each do |product| %>
<tr>
<td><%= product.name %></td>
<td><%= product.tag_ids %></td>
...
</tr>
<% end %>
class Tag < ApplicationRecord
has_and_belongs_to_many :products
...
end
class Product < ApplicationRecord
...
has_and_belongs_to_many :tags
...
end
类产品
标签应可通过产品访问
如果我正确地得到问题,您可以简单地调用产品
实例上的标记
<% product.tags.map do |tag| %>
...
<%= tag.name %>
...
<% end %>
...
...
标签应可通过产品访问
如果我正确地得到问题,您可以简单地调用产品
实例上的标记
<% product.tags.map do |tag| %>
...
<%= tag.name %>
...
<% end %>
...
...