假设你有一个有序阵列像这样,从地址数据库中生成:遍历分组数据的红宝石阵列(导轨)
[
{ city: Sacramento, state: CA },
{ city: San Francisco, state: CA },
{ city: Seattle, state: WA }
]
而你要这样用它来生成HTML:
<p>CA</p>
<ul>
<li>Sacramento</li>
<li>San Francisco</li>
</ul>
<p>WA</p>
<ul>
<li>Seattle</li>
</ul>
所以你按照状态分组。做这件事的一种方法是记住循环的每次迭代中的最后一行,并且仅当当前行的状态与最后一行状态相同时才显示状态并阻止UL标记。这似乎是一种讨厌和非Ruby-y。
任何人有任何关于这个优雅的Ruby/Rails方法的意见?
不能使用符号#to_proc引用一个符号散键。 ;) – coreyward 2011-03-23 21:36:10
@coreyward:你可以,如果你的元素是AR对象,而不是哈希。 ;) – 2011-03-23 21:38:20
@MladenJablanović是的,那么他们是方法,而不是符号散列键。缺少将引号分隔为散列值的缺失引号,问题显示了一个有效的Ruby散列定义。 – coreyward 2011-03-23 21:40:19