【发布时间】:2020-04-26 13:14:11
【问题描述】:
我正在开发一款 Rail 应用。该应用程序有一个像这样传入集合的部分:
<%= render ‘partial’, collection: @records, as: :record %>
记录调用另外两个表:帮助填充部分的公司和文章。公司有_很多:文章。我的部分在一个表格行中有一个标题,这是公司名称,另一行是文章标题。现在的问题是,如果一家公司有多篇文章,我会得到多行公司名称和文章标题,如下所示:
Company 1
Article 1
Company 1
Article 2
Company 1
Article 3
Company 2
Article 1
Company 2
Article 2
我是否可以通过迭代每次检查公司名称,如果相同,则不创建公司行?我希望是这样的:
Company 1
Article 1
Article 2
Article 3
Company 2
Article 1
Article 2
这是我的部分的样子:
<tr>
<td></td>
<td colspan="6"class="supplier-name"><%= get_supplier_name(alert) %></td>
</tr>
<tr class="alerts-item">
<td class="alerts-checkbox">
<label class="cont">
<input type="checkbox">
<span class="checkmark"></span>
</label>
</td>
<td colspan="3" class="alerts-table-info">
<span>
<strong><%= link_to get_article_title(alert), get_article_link(alert), target: '_blank' %></strong><br>
<%= alert.alert.article.snippet %>
</span>
</td>
<td>
<a href="#link" class="alert-btn-color"><%= get_article_search_group_name(alert) %></a>
</td>
<td class="share-col">
<button class="share-btn">Share</button>
</td>
<td>
<div class="dropdown">
<div class="dropdown-toggle">Resolve</div>
<div class="dropdown-content">
<span class="dropdown-title">Dropdown header</span>
<a class="dropdown-item" href="#">Action</a>
<a class="dropdown-item" href="#">Expandable</a>
<a class="dropdown-item" href="#">Expand</a>
</div>
</div>
</td>
</tr>
<tr> 和 <td>get_supplier_name(alert)</td> 是我不想重复的行。
【问题讨论】:
-
使用
group子句查询@records是最理想的,并且仍然允许您使用集合呈现的性能增强。
标签: ruby-on-rails ruby ruby-on-rails-5 iteration partials