Ruby on rails预先使用bootstrap3行类

时间:2014-02-17 20:29:59

标签: ruby-on-rails ruby twitter-bootstrap foreach

我想循环遍历数据并使用每行3列的bootstraps网格系统显示此数据,但是我需要多行数据量,如下所示:

<div class="row">
<div class="col-md-4">*DATA HERE*</div>
<div class="col-md-4">*DATA HERE*</div>
<div class="col-md-4">*DATA HERE*</div>
</div>
<div class="row">
<div class="col-md-4">*DATA HERE*</div>
<div class="col-md-4">*DATA HERE*</div>
<div class="col-md-4">*DATA HERE*</div>
</div>
<div class="row">
<div class="col-md-4">*DATA HERE*</div>
<div class="col-md-4">*DATA HERE*</div>
<div class="col-md-4">*DATA HERE*</div>
</div>

有人可以建议如何使用foreach在rails中实现这一点,显然下面只会渲染1个.row类并将所有col-md-4项返回到它中。我希望它在每行达到3个项目之后创建另一个.row类并重新开始。我希望这是有道理的!到目前为止我所拥有的:

<div class="row">
<% @work.each do |w| %>
<div class="col-md-6">
<%= w.image_url %>
</div>
<% end %>
</div>

1 个答案:

答案 0 :(得分:30)

使用Enumerable#each_slice

<% @work.each_slice(3) do |works| %>
  <div class="row">
    <% works.each do |work| %>
      <div class="col-md-4">*work.name*</div>
    <% end %>
  </div>
<% end %>