2011-07-29 16 views
2

私はormとしてmongoidを使用しています。私は結果セットに対してto_jsonを呼び出します。初期の実装は、(積極的なロードではなく)すべてがその場でロードされているという事実以下配列のための未定義のメソッド `serializable_hash '

簡体スキーマとコードを除いて、正常に動作します:

Answer has_many likers 

all_answers=Answer.includes(:likers).all.map{|a| a} 
all_answer.to_json(:only=>[:text],:include => {:likers=>{:only=>[:_id,:nickname]}}) 
私はこの偉大な宝石を使用して開始

mongoid_eager_loading)それは素晴らしい作品です。回答にhas_manyのlikers:私は例えばアレイを含むしようとしていたときに

undefined method `serializable_hash' for #<Array:0x00000105b3d020> 

このエラーはのみ発生:しかし、私はその結果にto_jsonを呼び出すときは、私はこのエラーになります

all_answers=Answer.includes(:user, :question,:likers,:comments).all.map{|a| a} 
all_answer.to_json(:only=>[:text],:include => {:likers=>{:only=>[:_id,:nickname]}}) 

を設定します。

個々のオブジェクトに含まれる配列には、serializable_hashメソッドがないと思われます。

どうすればこの問題を解決できますか?どんなアイデアも大歓迎です!

答えて

関連する問題