製品名、タグ、説明などの検索結果を返すように Thinking Sphinx をセットアップしたサイトがあります。正常に動作します。
しかし、TS から検索結果のグループを取得すると、Acts_as_Taggable_On から tag_counts を取得しようとすると、「メソッドがありません」というエラーが発生します。このエラーは、タグ付けされたアイテムのコレクションで tag_counts メソッドを呼び出す可能性のあるさまざまな状況にまで及ぶことがわかりました。
これらは機能します:
Owner.first.products.all.tag_counts
Product.where(:color => 'white').tag_counts
Product.first.tag_counts
しかし、これらはしません:
Product.all.tag_counts
Product.search('white').to_a.tag_counts
(後者は、TS 検索コレクションを返す Thinking Sphinx 検索を呼び出します。)
彼らはこのエラーのいくつかの変種を返します:
NoMethodError: undefined method `tag_counts' for #<Array:0x00000101585280>
これは、前者の呼び出しでは適切に関連付けられているが、後者では適切に関連付けられていない、ある種のプロキシ メソッドであるという漠然とした考えがあります。
タグ付けされたオブジェクトの配列で tag_counts メソッドが利用可能であることを確認する方法について、誰か提案がありますか?