2017-09-23 6 views
0

私は、私たちの電子商取引アプリケーションのファセット機能に電力を供給するためにSolrを使用しています。 https://wiki.apache.org/solr/SimpleFacetParameters#Tagging_and_excluding_Filtersファインケットとフィルタクエリの大文字と小文字を区別するSolrクエリ

アプリケーション側では、UIでフィルタリングの経験を提供するためにSolrから返されたファセットを使用しており、URLはファセットをパラメータとして使用して構築されています。これらのパラメータを使用して、fqのファセットパラメータをさらにSolrに渡します。

これは、ファセットクエリーが機能しなくなった小文字に変更され、未定義のフィールドエラーが発生したため、URLが大文字と小文字を区別することを除いて、素晴らしいことです。

この問題を克服する1つの方法は、すべてのファセットを小文字のインデックスにすることです。しかし、ファセットはSolrファセッティングの結果自体から作成されるので、小文字でも結果が得られます。フロントエンドでは元のケースがなくなり、CSSで管理することはできません.RAMをRAMやRAMとして表示するのではなく、RAMをケースとして保存する必要があります。同様に、microSDはmicroSDとして表示する必要があり、Microsdやmicrosdでは表示する必要はありません。要求が小さな場合に行われると

は、ここではhttps://wiki.apache.org/solr/SimpleFacetParameters#Tagging_and_excluding_Filters参照

q=mainquery&fq=status:public&fq=**doctype:pdf**&facet=on&**facet.field=doctype** 

しかし、結果は私たちのために

=== Document Type === 
    [ ] Word (42) 
    [x] PDF (96) 
    [ ] Excel(11) 
    [ ] HTML (63) 

、これらの要求は、仕事と未定義として私たちにエラーを与えるものではありません、適切な場合に表示されますフィールド!

私たちは何か間違っていますので、Solrはリクエストをしている間に大文字と小文字を区別して扱いますが、このヘルプのドキュメントではありませんか?または、Solrのヘルプドキュメント自体に間違いがありますか?

+0

[大文字小文字を区別しないファセットのSolrクエリの複製は可能ですが、結果は大文字小文字を維持します](https://stackoverflow.com/questions/46376518/case-insensitive-solr-query-for-facets-but-preserve-case-結果のために) – MatsLindh

+0

その質問は私によって投稿されました。しかし、この1つは、そのDocに従って動作していないFacetingに特有です! – Krunal

+0

これは(非常に)古い、維持されていないwikiページであり、まともな参照ではありません。現在の参照ドキュメントを使用します。そしてこの数字は、UIをどのように表示するかの例として意味しています。フィルタリングするときには、正しく索引付けされたバージョンを使用する必要があります。 – MatsLindh

答えて

0

これは(非常に)古い、維持されていないwikiページであり、まともな参照ではありません。現在の参照ドキュメントを使用します。そしてこの数字は、UIをどのように表示するかの例として意味しています。フィルタリングするときには、正しく索引付けされたバージョンを使用する必要があります。

Solrのすべてで大文字と小文字が区別されますが、ファセットは特殊なケースではありません。

これは、フィルタリング用の別のフィールド(小文字フィルタ付きのキーワードトークン化ツール)と表示用のフィールド(小文字フィルタなしのstring/keywordtokenizer)で解決できます。

関連する問題