2
我想写我的代码更紧凑。我有三个哈希。第一个散列(@hash)是子哈希值(值1,值)的集合,现在构建散列哈希
@hash = {
"Key" => ["value_1", "value_2"]
}
@value_1 = {
"Foo" => ["bar_1", "bar_2"]
}
@value_2 = {
"Foo2" => ["bar2_1", "bar2_2"]
}
,在我HAML视我试图做这样的事情:
- i = 0
- @hash.each_value do |value|
- @value_[i].each_pair do |k, v|
= k
= v[0]
- i = i +1
我不想一个接一个地写一个散列。这与从字符串中创建符号有些类似,您可以在其中编写诸如“value _#{i}”to_sym之类的东西。我希望有人能跟随并帮助我。
我的散列满满当当。我试图避免碰到那里的任何东西。我认为在这个观点中只会有一个简单的伎俩。有点功夫风格:-) – Jens
试试这个: - @ hash.each_value do | value | - value.each do | v | - send(:“@#{v}”)。each_pair do | k,val | = k = val [0] –
是的,就是这样。我不知道第3行发生了什么,但它似乎是我想要的功夫。非常感谢你。 – Jens