0
だから私はこの(すべての文字列と日付の属性)のように見えるARモデルを持っている:mongodbのクエリ結果をマージするには?
AR は DRIVER_NAME driver_license paid_on(日) ... helper_id HELPER_NAME helper_license paid_on_helper(日付をdriver_id )
私は無給表示するには、このクエリを持っている
def self.unpaid
result1 = AR.where(:paid_on => nil).in(:status => [AR::TRANSACTION_COMPLETE,AR::CANCELLED_BY_REQUESTER]).gt(:total_owed_to_driver => 0).asc(:assigned_driver_id).asc(:timestamp_requested)
result2 = AR.where(:paid_on_helper => nil, :assigned_driver2_id.ne => nil).in(:status => [AR::TRANSACTION_COMPLETE,AR::CANCELLED_BY_REQUESTER]).gt(:total_owed_to_driver => 0).asc(:assigned_driver2_id).asc(:timestamp_requested)
result1.to_a.concat(result2.to_a)
result1
end
問題は、このように2つをマージすると、このような配列になります。
Joe (main driver)
Joe (main driver)
Joe (main driver)
Bob (main driver)
Bob (main driver)
Larry (main driver)
Larry (main driver)
Larry (main driver)
Joe (2nd driver)
Joe (2nd driver)
Bob (2nd driver)
Bob (2nd driver)
Bob (2nd driver)
Bob (2nd driver)
Larry (2nd driver)
Larry (2nd driver)
私が必要とするのは、このように終わる配列です。
Joe (main driver)
Joe (main driver)
Joe (main driver)
Joe (2nd driver)
Joe (2nd driver)
Bob (main driver)
Bob (main driver)
Bob (2nd driver)
Bob (2nd driver)
Bob (2nd driver)
Bob (2nd driver)
Larry (main driver)
Larry (main driver)
Larry (main driver)
Larry (2nd driver)
Larry (2nd driver)
2次または3次where句と組み合わせた並べ替えを推測していますか?
これを試してみましたが、私のERBで表示するとき、それはこれだけのparamに該当項目を示し(:paid_on_helper => nilを、:assigned_driver2_id.ne => nilを) – jdog
'を呼び出す試してみてください。あなたの質問に「説明する」。これは実際のmongoクエリを表示し、デバッグに役立つはずです。 – mikwat
私はやったし、今私のアプリがクラッシュしている。それは再起動し、続いて継続的にクラッシュします。 wtf? – jdog