我想插入一个div.row
每三个街区,以包 3个span
一起以下HAML片段。
但是这个代码插入<div class="row"></div>
而不是包裹.span4
。
- data.apps.applications.each_with_index do |app, index|
- if index%3 == 0
.row # This is the line I want to insert
.span4
我怎么能这样做,在引入haml或者在这种情况下, erb
更适合?
我想你想要的是这样的:
-data.apps.applications.each_slice(3) do |apps|
.row
-apps.each do |app|
.span4
这使用each_slice
。 apps
是从三个项目的阵列applications
。
这需要三个要素的组从applications
,并为每个组增加了一个row
的div,然后添加一个span4
DIV的每个元素,所以你得到的是这样的:
<div class="row">
<div class="span4"></div>
<div class="span4"></div>
<div class="span4"></div>
</div>
<div class="row">
<div class="span4"></div>
<div class="span4"></div>
<div class="span4"></div>
</div>
如果你不具备三个要素的整数倍,在最后一组将只具有一个或两个成员。
您的压痕是错误的
- data.apps.applications.each_with_index do |app, index|
- if index%3 == 0
.row # This is the line I want to insert
.span4