キー値参照を含むオブジェクトの配列があります。Rails - 別々のオブジェクトに値を追加する方法
私がしたい[{booking_ref: 'w578383', foo: 'bar', price1: 500, price2: 30],
{booking_ref: 'w578383', foo: 'bar', price1: 600, price2: 40},
{booking_ref: 'r123523', foo: 'bar', price1: 699, price2: 4}]
:キーと値の参照(booking_ref)
- グループオブジェクトがへprice1とprice2(これらのグループを通過し、各オブジェクトにのみ一緒に財務数値を追加他の予約のprice1とprice2)
グループからの崩壊キー値参照を含むオブジェクトの配列に戻る。それは今のようになります。
[{booking_ref: 'w578383', foo: 'bar', price1: 1100, price2: 70}, {booking_ref: 'r123523', foo: 'bar', price1: 699, price2: 4}]
私は思っています:
objects.group_by(&:booking_ref).each {|group|
group.merge {|key, value1, value2| value1 + value2 if key == price1 || price2}
}
がその作業を行うので、場合どのように私は、その後GROUP_BY状態から戻ってそれらを返すのですか?ハッシュオブジェクトと
それは感謝します! 1つの方法は、1つの長い行に各価格をリストする必要からそれをリファクタリングする方法です。実際には合併する必要がある5/6の価格があります。 – JamesJY
私はそれに対処する方法を変更しました。 –
@ JamesJY:このコードがあなたのデータ構造に対してうまく動作する場合、なぜ私のコードでうまくいかないのか理解できません。とにかく、あなたは通常、ケアリーの答えに間違って行くことはできません。 –