我是Ruby on Rails的初学者。 而且我是韩国人。所以我的话很少受到欢迎...... 我的问题是...... 如果我有10个数据,我想在第一行放置1~5个数据,在第二行放置6~10个数据。
我试过这个代码
<table border height=300 width=300 align=center>
<thead>
<tr style="font size:20;">
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<% if current_user.samulham.nil? %>
<tr>
<% @samulham.each do |x| %>
<% if x.user_id.present?%>
<td><%= "X" %></td>
<% else %>
<td><%= link_to "#{x.lockernumber}", {:controller => "home", :action => "register", :cur_user => current_user.id, :cur_samulham => x.id}, method: :post %></td>
<% end %>
<% end %>
</tr>
<% end %>
</tbody>
</table>
感谢您的考虑。 :)
答案 0 :(得分:1)
如果您的数据集大小始终为10,则可以进行硬编码,如下所示:
<tbody>
<% if current_user.samulham.nil? %>
<tr>
<% @samulham.first(5)each do |x| %>
<% if x.user_id.present?%>
<td><%= "X" %></td>
<% else %>
<td><%= link_to "#{x.lockernumber}", {:controller => "home", :action => "register", :cur_user => current_user.id, :cur_samulham => x.id}, method: :post %></td>
<% end %>
<% end %>
</tr>
<tr>
<% @samulham.last(5)each do |x| %>
<% if x.user_id.present?%>
<td><%= "X" %></td>
<% else %>
<td><%= link_to "#{x.lockernumber}", {:controller => "home", :action => "register", :cur_user => current_user.id, :cur_samulham => x.id}, method: :post %></td>
<% end %>
<% end %>
</tr>
<% end %>
</tbody>
编辑:但是如果你想为5个记录的组做通用,你可以这样做:
@samulham.in_groups_of(5).each do |group|
<tr>
<% group.each do |x| %>
<% if x.user_id.present?%>
<td><%= "X" %></td>
<% else %>
<td><%= link_to "#{x.lockernumber}", {:controller => "home", :action => "register", :cur_user => current_user.id, :cur_samulham => x.id}, method: :post %></td>
<% end %>
<% end %>
</tr>
end