在这里,我想建立一个每周计划员,我将在后面插入计划。
我的列按星期几排序。(星期一,星期二......) 现在,我希望按时间对行进行排序。
但是,我的代码如下。对于每一列,它循环的次数与我的时间段中的项目数相同。
如果你可以给我一些关于如何修复它的指导,以便每个时间段只在整个表格中出现一次,我将不胜感激。
代码
<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 %>
答案 0 :(得分:2)
好的,你刚刚翻过来......你需要这样的东西:
<% 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 %>
希望这会有所帮助,祝你好运。