0

Solr(Lucene経由)は、フィールドがドキュメント内でインデックス付けされる方法を示すさまざまな方法をサポートします:インデックス付け、トークン化、保存、...

Solrに格納されているが、索引付けされていないフィールドを作成する方法を探しています。Sunspotでそれを達成する方法はありますか?

4

2 に答える 2

2

:stored => trueSunspotの構成DSLは、多くのデフォルトタイプのオプションをサポートしています。保存された文字列の例では、最初の例よりもはるかに簡単です。

searchable do
  string :name, :stored => true
end

これにより、Sunspotの標準スキーマにすでに存在name_ssする以下に対応するフィールド名が生成されます。dynamicField

<dynamicField name="*_ss" stored="true" type="string" multiValued="false" indexed="true"/>

独自のカスタムを作成するfielddynamicField、schema.xmlに保存してインデックスを作成せずに、Sunspot1.2:asオプションを使用して対応するフィールド名を指定することもできます。

たとえば、上記のより詳細なバージョン。スキーマ内:

<dynamicField name="*_stored_string" type="string" indexed="false" stored="true" />

そしてあなたのモデルでは:

searchable do
  string :name, :as => 'name_stored_string'
end
于 2011-06-17T13:06:01.037 に答える
0

あなたが試すことができます :

http:// localhost:8983 / solr / admin / luke?numTerms = 0

そして、xpathで読み取るか、スキーマ属性値を持つこれらのフィールドを正規表現します。

<str name="I">Indexed</str>
<str name="T">Tokenized</str>
<str name="S">Stored</str>

次のようなものが得られます:

<lst name="field">
<str name="type">stringGeneralType</str>
<str name="schema">--SM---------</str>
</lst>
于 2011-05-27T11:02:30.470 に答える