1

ここでは、後で計画を挿入するウィークリー プランナーを設定します。

曜日ごとに列を並べ替えています(月曜日、火曜日...)今、行を時間で並べ替えたいと思います。

ただし、以下のコードを使用します。列ごとに、タイム スロットのアイテム数と同じ回数ループします。

各タイムスロットがテーブル全体で一度しか表示されないように修正する方法について、いくつかのガイダンスを教えていただければ幸いです。

コード

<table class="Time Table">
  <tr>
    <th><%= "Time" %></th>
    <th><%= "Monday" %></th>
    <th><%= "Tuesday" %></th>
    <th><%= "Wednesday" %></th>
    <th><%= "Thursday" %></th>
    <th><%= "Friday" %></th>
    <th><%= "Saturday" %></th>

 </tr>
  <% @time_slots.each do |time_slot| %>
    <tr>
      <td></td>
        <td><% if time_slot.dayOfWeek = "Monday" %><%= time_slot.startTime %><% end %></td>
        <td><% if time_slot.dayOfWeek = "Tuesday" %><%= time_slot.startTime %><% end %></td>
    <td><% if time_slot.dayOfWeek = "Wednesday" %><%= time_slot.startTime %><% end %></td>
    <td><% if time_slot.dayOfWeek = "Thursday" %><%= time_slot.startTime %><% end %></td>
    <td><% if time_slot.dayOfWeek = "Friday" %><%= time_slot.startTime %><% end %></td>
    <td><% if time_slot.dayOfWeek = "Saturday" %><%= time_slot.startTime %><% end %></td>
    </tr>
  <% end %>

4

1 に答える 1

2

OK、ひっくり返したところです...次のようなものが必要です:

<% days = %w[ Monday Tuesday Wednesday Thursday Friday Saturday] %>

<% days.each do |day| %>
   <td>
   <% @time_slots.select {|time_slot| time_slot.dayOfWeek == day }.each do |time_slot| %>
     <%= time_slot.startTime %><br/>
   <% end %>
   </td>
<% end %>

これが役に立てば幸いです。幸運を祈ります。

于 2012-11-03T05:34:45.710 に答える