18

Railsでの通常のActiveRecord/SQLセットアップ、コマンドを実行するときのコンソール*.whereなど*.allで、レコードアイテムの実際の配列を取得します。ただし、Mongoidに切り替えた後、代わりに基準を取得します。実際の結果を取得するにはどうすればよいですか?

これは私が今得ているものです...

ruby-1.9.2-p180 :001 > App.all
 => #<Mongoid::Criteria
  selector: {},
  options:  {},
  class:    App,
  embedded: false>
4

2 に答える 2

25

Mongoidでモデルをクエリすると、(前述のように)条件オブジェクトが返されます。条件からデータをリクエストするまで、実際にはクエリは実行されません。

あなたがする必要があるのは、次のように、eachまたはmapまたは配列メソッドのいずれかを使用して、結果を反復処理することです。

App.all.each do |app|
  puts app.name
end

または、配列だけが必要な場合はto_a、条件を呼び出すだけです。

App.all.to_a
于 2011-07-07T08:17:39.453 に答える
19

App.all.entries同様に動作します。

于 2011-08-29T09:33:00.310 に答える