問題タブ [faceted-search]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
solr - SOLR のネストされたフィールド
solr でネストされたフィールドを作成する可能性について質問があります。Google 検索でグループについて何か教えてもらいましたが、それは結果だけだと思いますか?
私が持ちたいのは、そのような構造です:
- カテゴリー1
- アイテム 1 (9)
- 項目 2 (8)
- カテゴリー2
- 項目 3 (6)
- カテゴリー3
- アイテム 4 (23)
私はこのようなことを試しました:
しかし、うまくいきません。
更新: カテゴリとアイテムをファセットする必要があります。すべてのアイテム (=facet) はカテゴリの一部です。1 つのカテゴリに複数のフィールドまたは null フィールドを含めることができます。カテゴリとアイテムはデータベースに保存されているため、動的にインデックスを作成したいと考えています。項目のみを検索したいのですが、カテゴリはテキストのみです。Tomcat 7でsolr 3.3を使用しています。
lucene - ファセット検索のための複数の分類インデックスのマージ
lucene 3.4.0 で導入された新しいファセットを使用するように、既存の lucene インデックスを変更する予定です。
残念ながら、ドキュメントはまだ少しまばらなので、私の質問に対する答えを見つけることができませんでした:
800 万冊の比較的大きなインデックスを作成します。ドキュメントをいくつかの小さなグループに分割し、それらのインデックスを作成し、IndexWriter.addIndexes
.
これにより、作業を複数のスレッドまたはコンピューターに分割することができます。
インデックスにファセット検索機能を追加したいのですが、次の問題があります: LuceneTaxonmyWriter によって作成された複数の分類インデックスをマージ/追加/結合するにはどうすればよいですか?
solr - Solr の「More like this」はファセット クエリをサポートしていますか?
Dismax ハンドラーを使用してファセットとハイライトを行うことができました。
More Like This の結果のファセットを試してみました。たとえば、次のようなクエリです。
しかし、結果は次のとおりです。
これは、ファセットがq=id:"11qualcomm.doc"に対してのみ機能し、MLT 結果セットに対しては機能しないことを意味します。
ファセットは MLT 結果セットに対して機能しますか? はいの場合、何が間違っていますか?
mapreduce - ドキュメントのネストされた値に対して述語を適用することによる RavenDb ファセット検索
RavenDBでは、特定の基準に一致するプロパティをカウントする必要がある場合を理解しています。それを達成できます
- グループ化したいプロパティ名に対してファセットを作成することにより、
- 次に、上記のプロパティと where 句で必要なプロパティのインデックスを作成します。
- 最後に、上記のインデックスを使用してクエリを発行します。ToFacets 拡張機能を使用してクエリを具体化します。
しかし、ドキュメントの値のコレクションであるプロパティに対する述語が where 句に含まれている場合はどうなるでしょうか。入れ子になったプロパティをコレクションから親ドキュメントに対するインデックスに追加すると、親ドキュメントのプロパティに対するファセット カウントが正確にならないのでしょうか?
例えば
私のクエリは次のようになります
更新:失敗したテストは次のとおりです
しかし、クエリを次のように変更すると。(ネストされたコレクションをクエリしない)
これで、ディクショナリに 3 つの列挙が取得され、すべて値が含まれます。
plone - 制約された語彙からの Plone コンテンツのタグ付けと検索
私は、編集者がいくつかの直交語彙でコンテンツにタグを付けられるようにし、ユーザーがそれらの語彙に基づいてコンテンツを検索できる優れた検索インターフェイスを用意したいと考えています。ソリューションの一部が存在しすぎているようです
- ATVocabularyManager - 編集者がさまざまな語彙を作成できるようにします
- eea.facetednavigation - 編集者が ATVocabularyManger 語彙を検索パネルに接続できるようにします
特定のコンテンツ タイプの分類タブに新しいフィールドを追加し、これらを語彙によって制限する方法が欠けています。これらの値を保存してインデックスを作成し、検索できるようにします。
コードでこれを行うことができることはわかっていますが、編集者が必要に応じて分類する方法を追加できるように、何か TTW を望んでいます。これを解決するためのプラグインがすでに存在しているに違いないと確信していますが、これまでのところ見つかりませんでした。器用さスキーマ エディタがこの問題を解決すると確信していますが、既存の Plone コンテンツ タイプにはこれが必要です。
とても不思議
ravendb - RavenDb ファセット検索述語の重複
次のクラスがあるとします
私の要件は、結果セットをユーザーに取得し、その上にいくつかのファセットを表示することです。これは、以下のステートメントでキャプチャされた基準です。
上記のステートメントが結果セットを取得すると、理想的には、ファセットを取得したい場合に述語を作成する方法を変更せずに、実行したであろう結果セットを取得します
ここでは、実際の述語を変更しておらず、移動先のインデックスと ToFacets 拡張機能のみを変更しています。
私のインデックスは次のようになります
これは機能しません。私のファセットは空に戻ります。指定されたクエリ要件のファセットを取得するには、クエリを次のように変更する必要があります
location プロパティが平坦化された場所。それぞれのインデックスは
いくつかの背景: 簡単にするために、上記のクエリ ステートメントで述語を where 句として指定しました。私のアプリケーション コードでは、Specification クラスで個別に定義された各述語を持っています。ioc を使用して、特定のインターフェイスを満たすすべての仕様を取得し、すべての仕様から式を作成し、最後に式の述語を上記のクエリに適用します。これにより、新しい述語を追加する必要がある要件がある場合、新しい仕様クラスを作成でき、ioc によって取得され、他のクラスに変更を加えずに適用される構成モデルが得られます。
問題 ですが、上記のコードで示したように、ファセットを取得するときにネストされたコレクションにクエリを実行すると述語が変更されるため、これ以上これを行うことはできません。したがって、これらの述語を 2 回定義するか、結果セット クエリ用とファセット クエリ用の 2 つの場所に記述する必要があります。要件が変更された場合は、2 つの場所でクエリを更新する必要があります。
質問 ネストされたコレクション基準が関係している場合に、結果セットとファセットの両方を取得するために同じ述語を再使用できるように、これを回避する方法はありますか?
同じ要件に対して、結果を取得する方法とファセットを取得する方法の 2 つの異なる方法でクエリを記述する必要がなければ、それは素晴らしいことです。
solr - 特定の日時値より大きい場合は、solrファセットクエリを確認してください
私はsolrに次のものを持っています
を検索したい場合はjain
、このクエリを使用します
問題は、2011-11-01 13:00:00 以降または (2011-11-01 12:30:00 と 2011-11-01 13 の間) 以降に解析されたエントリを検索するにはどうすればよいかということです。 :30:00)??
ご協力いただきありがとうございます
ruby-on-rails - Rails + Sunspot:関連付けが割り当てられていないレコードをフィルタリングするための「未割り当て」ファセット?
ファセットについてはまだ学習中ですが、関連付けられたレコードが割り当てられていないレコードをフィルター処理したいと考えています。最初のいくつかのコード:
モデル:
コントローラー:
景色:
ビューには、それぞれのカウントを含むカテゴリ フィルターのリストが表示されますが、カテゴリが割り当てられていないプロジェクトをクエリする「未割り当て」ファセット(およびそのカウント)を含めたいと考えています。これはファセットで可能ですか?また、任意のカテゴリが割り当てられたプロジェクトをフィルタリングする "Assigned any" ファセット (およびそのカウント) はどうですか? ありがとうございました。
html - フォーム入力がページ全体に広がっている場合、最適な HTML アプローチは何ですか?
サイドバー (ファセットはチェック ボックス) に入力があり、ページのヘッダー (メイン クエリ ボックス) に入力があるファセット検索システムを構築しています。ユーザーが検索を送信すると、これらすべての入力が同時に送信されます。
これを機能させるために考えられる唯一の方法は、ページ全体を HTML フォーム タグでラップすることです。次の疑似 html のようなもの:
これは、次の 3 つの点を除いて機能します。
- 上で示したように、ページで他のフォームを使用する必要があります。
- さまざまな django テンプレートを使用してヘッダーとサイドバーを生成し、テンプレートが相互に依存するようにします。
- サイドバーは実際には 3 行ではなく約 100 行あるため、これは非常に混乱しています。
私が気付いていない、または巨大な HTML フォームを作成するのが標準であるより賢い方法はありますか? このような状況では、Javascript を使用して入力エントリをより通常の形式で生成する方がよいでしょうか? それともそれが唯一の選択肢ですか?
創造的な解決策やアイデアはありますか?