рельсы сумма уникальных записей в цикле - PullRequest
0 голосов
/ 01 ноября 2018

У меня есть модель LineItem с командой столбцов и количеством. Я пытаюсь запустить цикл, чтобы получить общее количество команды "х".

<table>
    <thead>
      <tr>
        <th>Team</th>
        <th>Quantity</th>
      </tr>
    </thead>
    <tbody>
      <% for line_item in @order.line_items %>
        <tr>
          <td><%= line_item.team %></td>
          <td><%= line_item.quantity %></td>
        </tr>
      <% end %>
    </tbody>
  </table> 

Вот красивая картинка стола. По сути, я хочу получить сумму всех команд с именем «USC» вместо того, чтобы видеть строку для каждой из них. Любая помощь будет оценена. enter image description here

Ответы [ 2 ]

0 голосов
/ 01 ноября 2018
<% line_items = @order.line_items.select('team, sum(quantity) as total_quantity').group('team') %>
<% line_items.each do |line_item| %>
  <tr>
    <td><%= line_item.team %></td>
    <td><%= line_item.total_quantity %></td>
  </tr>
<% end %>
0 голосов
/ 01 ноября 2018

В вашем контроллере:

@line_items = @order.line_items.group(:team).sum(:quantity)

На ваш взгляд:

<% @line_items.each do |team, quantity| %>
  <tr>
    <td><%= team %></td>
    <td><%= quantity %></td>
  </tr>
<% end %>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...