2011-05-25 58 views
0

Solr的(通過Lucene的)支持不同的方式來表示某個字段在文檔中建立索引的方式:索引,記號化,存儲,...Solr的太陽黑子非索引字段

我正在尋找一種方式來有存儲在Solr中的字段,但沒有索引。有沒有辦法在太陽黑子中實現這一點?

回答

2

太陽黑子的配置DSL支持的選項210的許多默認類型。對於存儲串的例子,它會比我的第一個例子簡單得多:

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

這生成對應於以下dynamicField已經出現在太陽黑子的標準架構的name_ss字段名:

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

您還可以在您的schema.xml中創建自己的自定義fielddynamicField以存儲但不索引,然後使用Sunspot 1.2 :as選項指定相應的字段名稱。

例如,上面的一個更詳細的版本。在您的模式:

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

而在你的模型:

searchable do 
    string :name, :as => 'name_stored_string' 
end 
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> 
+0

會告訴我,如果一個字段存儲/編入索引。但是不是告訴Solr關於現場存儲屬性的一種方式。或者我在這裏錯過了什麼? – Khash 2011-05-27 18:38:13