Mongoid (MongoDB オブジェクト マッパー) から返された Enumerable オブジェクトがあります。
HAML の使用:
= @employees.count
= @employees.class
- @employees.each do |e|
=h e.inspect
カウントは 3 を示します クラスは Enumerable::Enumerator を示します しかし、1 つの項目だけが出力されます
オブジェクトは、を使用してコントローラーに返されます
@employees = Employee.limit(3).where({:_id.gte => startID.to_i})
私が変われば
- @employees.each do |e|
に
- @employees.to_a.each do |e|
次に、3 つすべてを出力しますが、Enumerable メソッドが失敗するのはなぜですか? Railsコンソールで試してみると、p e
実際には3つのアイテムが出力されます。