Ruby on rails 按列和行轨道对表进行排序

Ruby on rails 按列和行轨道对表进行排序,ruby-on-rails,ruby-on-rails-3,ruby-on-rails-3.2,Ruby On Rails,Ruby On Rails 3,Ruby On Rails 3.2,在这里,我想建立一个每周计划表,稍后在其中插入计划 我有按一周中的几天排序的列。(星期一、星期二…) 现在,我希望该行按时间排序 但是,使用下面的代码。对于每一列,它循环的次数与我的时间段中的项目数相同 如果您能给我一些指导,指导我如何着手修复它,使每个时隙在整个表中只出现一次,我将不胜感激 密码 <table class="Time Table"> <tr> <th><%= "Time" %></th> <t

在这里,我想建立一个每周计划表,稍后在其中插入计划

我有按一周中的几天排序的列。(星期一、星期二…) 现在,我希望该行按时间排序

但是,使用下面的代码。对于每一列,它循环的次数与我的时间段中的项目数相同

如果您能给我一些指导,指导我如何着手修复它,使每个时隙在整个表中只出现一次,我将不胜感激

密码

<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 %>


好的,你刚刚把它翻过来。。。你需要这样的东西:

<% 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 %>



希望这有帮助,祝你好运。

那么
@times\u slots
中是否有重复项?如果你不理解我的问题,这里有一个图片链接。不,我每天只有一个时间。而且,在我的表中,它们出现了6次。而且,您可能希望考虑将<代码> DayOfths转换为更多Read -y y>代码> DayiOfOnWegs,和<代码> StestTime< /Cord> > <代码> StaskTime。我想这就是我所需要的。然而,通过实施这一点。我无法在同一列下获得相同的天数,表中缺少一些值。似乎不知道我哪里出错了。这是它的照片。是的,你说得对,我把逻辑搞乱了-检查编辑。。。(使太多的
s)忘记缺少的值部分,我发现了这一点。但是,当我在星期一中添加更多值时,它就不属于同一列了。事实上,每天应该只有一个时间段,在我最初的例子中,每个时间段都在一个时间段内。更新后的代码应该正确绘制。