我正在遍历一组项并将它们显示在嵌套在div中的列表中。目标是每天都有一个div,并在每个div内显示当天的项目。有条件地关闭HAML中的标记
我该如何在HAML中做到这一点?我不认为我可以(或应该)有条件地关闭并创建一个新的标签,就像我可以在erb中一样。
我想:
- @items.each do |item|
- if item date is diff from previous make a new container
.container
%h2 #{item.date}
= yield_content :display_item item
- else
= yield_content :display_item item
但是,这将创建下列:
<div class="container">
<h2>01/28/2012</h2>
<ul>
<li>
... item
</li>
</ul>
</div>
<li>
...item
</li>
但我想在同一div其他项目。 我使用的红宝石,辛纳屈(包括content_for助手)
我认为这是不可能的哈姆。您可能想要更改您的数据结构。 – thammi 2012-02-12 22:28:32
我正在收集服务器端的数据,它已经按日期排序。看起来很愚蠢,我不得不将视图传递给以下结构:[date => [items]]。如果我不能得到一个解决方案,这将是我的后备 – aar 2012-02-13 01:01:17