私は最近 Sphinx をいじっていますが、これは非常に素晴らしいツールです。ただし、正しく構成して、希望どおりに動作させるのは少し難しいことがわかっています。
データベースに 3 つのテーブルがあるとします。人、注文、コメントです。次に、3 つの個別のインデックスを構築します。
Sphinx が提供する PHP API を使用して、サーバーに接続し、単純な $Query() コマンドを実行することができ、実際にすべてのインデックスを検索しています。
さて、これは私が混乱している部分です:
結果セットは各インデックスの配列を返し、重み付けによって並べ替えられます。したがって、配列には 3 つのキーがあります。
0 [人]、1 [注文]、2 [コメント]。
私が探しているのは、重みでソートされたすべてのインデックスからの結果を含む1 つの集計配列です。これにより、後で結果をページ分割しやすくなります。
私はCakePHPを使用しています。コミュニティが利用可能にした既存のプラグインなどは知っていますが、複数のテーブルを検索できるものはないようです - 単一のモデルのみです。