2013-04-29 77 views
1

是否可以将ERB代码转换为HAML?我可以将此ERB转换为HAML吗?

ERB

<div class="users">     
 <div class="row"> 
   <% i = 0 %> 
   <% @users.each do |user| %> 
     <span><%= @user.name %></span> 
     <% if i % 4 == 0 %> 
       </div> <!-- Close div .row --> 
       <div class="row"> <!-- Open new div .row --> 
     <% end %> 
     <% i += 1 %> 
   <% end %> 
 </div> <!-- Close div .row --> 
</div> <!-- Close div .users --> 

结果(HTML)

<div class="users">     
 <div class="row"> 
   <span>User Name 1</span> 
   <span>User Name 2</span> 
   <span>User Name 3</span> 
   <span>User Name 4</span> 
 </div> <!-- Close div .row --> 
 <div class="row"> <!-- Open new div .row --> 
   <span>User Name 5</span> 
   <span>User Name 6</span> 
   <span>User Name 7</span> 
   <span>User Name 8</span> 
 </div> <!-- Close div .row --> 
 <div class="row"> <!-- Open new div .row --> 
   <span>User Name 9</span> 
   <span>User Name 10</span> 
   <span>User Name 11</span> 
   <span>User Name 12</span> 
 </div> <!-- Close div .row --> 
</div> <!-- Close div .users --> 
+0

可能重复[?我怎么能有条件地包裹在一个标签的一些HAML内容](http://stackoverflow.com/questions/7237308/how -can-i-conditionally-wrap-some-haml-content-in-a-tag) – matt 2013-04-29 19:59:15

+0

@matt,我编辑了代码,现在请看。 :) – 2013-04-29 20:04:39

+0

那么_original_问题是重复的,现在不是了。 – matt 2013-04-29 20:04:53

回答

2

你需要组织你的d ATA你需要如何使用它,使用类似each_slice

.users 
    - @users.each_slice(4) do |group| 
    .row 
     - group.each do |user| 
     %span= user.name 
+1

:(我刚刚发布,你很快:) – kiddorails 2013-04-29 20:18:22

2

我想你想要这个: 编辑:

.users 
    [email protected]_slice(4) do |slice| 
    .row 
     -slice.each do |user| 
     %span= user.name 
+0

你是对的,我问错了。请看编辑后的代码。 – 2013-04-29 20:02:22

+0

根据确切的要求进行修改。请稍候。 :) – kiddorails 2013-04-29 20:09:06

相关问题