私はこのループがあります。Ruby - ハッシュキーに配列を追加する方法は?
car_data = Hash.new
Car.all.each do |c|
car_data[c.brand] = c.id
car_data['NEW'] << c.id if c.new == 1
end
を私はこのsnipperを持っており、car_data['NEW']
に、すべての新車を保存しようとしますが、このコードは(8あるはずです)ハッシュに一つだけのアイテムを保持します。
Iは、アレイとしてcar_data['NEW']
ように定義しようとした:
car_data = Hash.new
car_data['NEW'] = Hash.new
Car.all.each do |c|
car_data[c.brand] = c.id
car_data['NEW'] << c.id if c.new == 1
end
をしかし、結果は同じであった - ただ一つの項目。 配列全体をハッシュキー要素に保存するにはどうすればよいですか?
ありがとうございます。
Rubyの規則が使用する '{}'新しいハッシュのために、その呼び出し '' Hash.newなどのデフォルト値を供給する場合Hash.new'のみ必要である(0) '。少ないほうがいいですね。 – tadman