1
I have a table that looks like the following: 

<table class = "rota">
    <thead>
        <th>Date</th> 
        <% @hospitals.each do |hosp| %>
        <th><%= hosp.name%></th>
        <% end %>
    </thead>
    <tbody>
        <%- if @rota_days.blank? %>
        <tr>
            <td colspan="<%= @hospitals.count %>">No rota day</td>
        </tr>
        <% end -%>
        <% @dates.each do |date| %>
        <tr>
            <td><%= date.inspect %></td>

            <% end %>
        </tr>
    </tbody>
</table>

これは以下を出力します:

出力

空のセルを含む空白行を生成しようとしています。どこが間違っているのか特定できないようです。可能な限り最良の解決策は何ですか

更新版

<table class = "rota">
    <thead>
        <th>Date</th> 
        <% @hospitals.each do |hosp| %>
        <th><%= hosp.name%></th>
        <% end %>
    </thead>
    <tbody>
        <%- if @rota_days.blank? %>
        <tr>
            <td colspan="<%= @hospitals.count %>">No rota day</td>
        </tr>
        <% end -%>
        <% @dates.each do |date| %>
        <tr>
            <td><%= date.inspect %></td>
            <% (1..@hospitals.count).each do %> 
                <td></td> 
            <% end %> 
           </tr> 
            <% end %>
    </tbody>
</table>
4

1 に答える 1

1

ループの終了が早すぎて、毎回tdが必要になるため、次のように変更します。

<% @dates.each do |date| %>
  <tr>
    <td><%= date.inspect %></td>
     <% end %>
  </tr>

に:

<% @dates.each do |date| %>
  <tr>
    <td><%= date.inspect %></td> 
    <% (1..@hospitals.count).each do %>
      <td></td>    
    <% end %>       
  </tr>
<% end %>
于 2012-11-01T18:51:26.683 に答える