私はsolr 3.5を使用しており、カスタムフィールドを追加しました。これはschema.xmlで次のように定義してドキュメントにカテゴリを追加します。ソルでファセットフィールドの小文字を無効にする
<field name="category" type="string" indexed="true" stored="true"/>
ここでは、Search-Web-Clientを実装しています。Search-Web-Clientは、そのカテゴリフィールドのインデックスのすべての値を表示する必要があります。
<response>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">45</int>
<lst name="params">
<str name="facet.field">category</str>
<str name="q">*</str>
<str name="facet">true</str>
</lst>
</lst>
<result name="response" numFound="0" start="0" maxScore="0.0"/>
<lst name="facet_counts">
<lst name="facet_queries"/>
<lst name="facet_fields">
<lst name="category">
<int name="category1">0</int>
<int name="category2">0</int>
<int name="category3">0</int>
<int name="category4">0</int>
<int name="category5">0</int>
</lst>
</lst>
<lst name="facet_dates"/>
<lst name="facet_ranges"/>
</lst>
</response>
私のWebクライアントは、カテゴリのすべての名前を表示しますが、これらは小文字で書かれているが、インデックスに格納されています。
facet=true&facet.field=category&q=*
結果は次のようになります。私は次のクエリであることでした大文字で
<response>
<result>
<doc>
...
<str name="category">Category1</str>
...
</doc>
</result>
</response>
- ソリューション:それは大文字と小文字を区別するために、ファセット値名を強制することは可能ですか?
- ソリューションb:インデックスに格納されているカテゴリのすべての値を与える別のクエリがありますか?
は、あなたの 'schema.xml'であなたの文字列FIELDTYPEの定義を投稿してくださいことはできますか?それはデフォルトのものではありません、そうですか? – javanna
ご協力ありがとうございます、それはデフォルトの定義です。しかし、私は自分のサイトのインデックスを再作成する必要がありました。 – jpee
素晴らしい、あなたが解決してうれしい! – javanna