微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

每3个项目就会产生hatr new tr

如何解决每3个项目就会产生hatr new tr

| 我有以下代码(简化说明):
    - @assumptions[1].each do |ca|
      - if count % 3 == 1
        %tr
          %th
            = ca.value
      - else
        %th
          = ca.value
      - count = count + 1
我不确定如何使此项工作正常进行,以使每4个项目都创建一个标签。 它是这样输出的:
  <tr>
    <tr> 
      <th> 
        700.0
      </th> 
    </tr> 
    <th> 
      1235.0
    </th> 
    <th> 
      0.8
    </th> 
    <th> 
      650.0
    </th> 
  <tr> 
    <th> 
      1050.0
    </th> 
  </tr> 
  <th> 
    0.2
  </th> 
</tr>
这就是我希望输出的方式:
<tr>
  <th>
    700.0
  </th>
  <th>
    1235.0
  </th>
  <th>
    0.8
  </th>
</tr>
<tr>
  <th>
    650.0
  </th>
  <th>
    1050.0
  </th>
</tr>
我希望这是有道理的。     

解决方法

        您可以使用Enumerable的
each_slice
方法将其分组为3个块:
- @assumptions[1].each_slice(3) do |group|
  %tr
    - group.each do |ca|
      %th= ca.value
    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。