0

私は LucidWorks と Solr を使用して、さまざまな種類のページを持つ大規模で多様な Web アプリに検索を実装しています。この仕様では、ページ タイプごとにグループ化された単一の検索結果ページと、各グループの検索結果のページネーションが必要です。

このようなもので簡単にグループ化できます

q=[searchterm]&group=true&group.field=[pagetypefield]

適切にグループ化された結果を返します。

私もできる:

q=[searchterm]&group=true&group.field=[pagetypefield]&group.offset=[x]&group.limit=[y]

これにより、結果 x から始まるグループごとに y の結果が得られます

ただし、グループ 1 の結果 0 ~ 4 とグループ 2 の結果 5 ~ 9 を取得したい場合があるため、グループごとにオフセットと制限を指定できるようにしたいと考えています。

の値[pagetypefield]は既知の値のリストであるため、次のような複数のクエリを実行できます。

q=[searchterm]&group=true&group.query=[pagetypefield]:[value]&group.offset=[x]&group.limit=[y]

の既知の値ごとに[pagetypefield]

または group.offset を使用せず、私の例では両方のグループの結果 0-9 を取得し、必要のない結果を破棄します。

どちらのオプションもあまり好きではありませんが、グループごとにオフセットと制限を指定する方法がドキュメントにありません。

どんなアドバイスでも大歓迎です。

4

1 に答える 1

0

私がやりたいことは不可能であるという確認がLucinWorksからあり、最初の検索がキャッシュされるため、その後の検索が非常に高速になるため、複数の検索ソリューションを推奨しました。

私が最終的にやろうとしているのは、各グループの最初の n 個の結果を取得して検索結果をグループ化し、次に ajax を使用して各グループをページ分割することです。

于 2012-08-24T08:55:55.040 に答える