比较部分迭代期间的属性

问题描述 投票:0回答:1

我正在开发Rail应用。该应用程序的一部分正在传递这样的集合:

<%= render ‘partial’, collection: @records, as: :record %>

记录调用另外两个表:帮助填充部分的公司和文章。公司has_many:文章。我的partial在一个表行中有一个标题,即公司名称,另一行中有商品标题。现在的问题是,如果一家公司有多个文章,我会得到多行公司名称和文章标题,如下所示:

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>是我不想重复的行。

ruby-on-rails ruby ruby-on-rails-5 iteration partials
1个回答
1
投票

将部分用于companies,然后每个部分company.html.erb都具有用于article.html.erb的部分。

© www.soinside.com 2019 - 2024. All rights reserved.