リストが埋め込まれた製品があります。
そのため、価格順のリストを希望します。私はmongoidとMoney gemを使用しています。ただし、後で (外部 API から) 新しく作成されたリストを追加するため、mongoid による注文は意味がありません。
リストには :price が含まれています。Price は、:cents と :currency を含む Money タイプです。
リスト.rb:
scope :order_on_price, order_by("price.cents" => "desc")
これはどちらも機能しません:
scope :order_on_price, sort_by{ |price| price[:cents]}
products_controller.rb (外部 API がロードされた後):
@product.listings = @product.listings.order_on_price
私は何を間違っていますか?ありがとう..
アップデート:
追加されたコンソール出力:
1.9.3-p327 :005 > Product.last.listings
=> [#<Listing _id: 514374bc98d12b3a3f00a164, created_at: 2013-03-15 19:21:32 UTC, updated_at: 2013-03-15 19:21:32 UTC, price: {"cents"=>3755, "currency_iso"=>"EUR"}, availability: true, scan_id: "513f4cdf3e15fce2eaec43b6">]