matchIdごとに2つのレコードをループしていますが、エラーが発生しています。Railsループで列ごとに2つのレコードを一覧表示する
undefined method `first' for 1:Fixnum
チーム1、チーム2、およびすべての目標が同じ行にあるテーブルビューでデータを一覧表示することをお勧めします。この結果を達成するためのより良い方法はありますか?または私は正しい軌道上にあるが、何かが欠けている?
データベース
|matchId| matchDate |teamId|goals|
| 101 |2016-05-14 11:40:00| 10 | 3 |
| 101 |2016-05-14 11:40:00| 20 | 2 |
| 102 |2016-05-14 13:30:00| 11 | 0 |
| 102 |2016-05-14 13:30:00| 21 | 1 |
コントローラ
@match = Match.all.group_by { |m| m.matchDate.beginning_of_week }
ビュー
<table class="table table-bordered">
<% @match.each do |date, games| %>
<tr class="match-date">
<td colspan='5'><%= date.strftime('%d %B, %Y') %></td>
</tr>
<% games.group_by(&:matchId).each do |m, t| %>
<% t.each do |d| %>
<tr>
<td><%= d.teamId.first %></td>
<td><%= d.goals.first %></td>
<td>Defeated</td>
<td><%= d.teamId.last %></td>
<td><%= d.goals.last %></td>
</tr>
<% end %>
<% end %>
<% end %>
</table>
がはるかにヨーヨーに私たちに感謝だろうなくなります。ばっちり成功! – DollarChills
問題はない、グループ分けは難しい –