Конфигурация Sunspot DSL поддерживает опцию :stored => true
для многих типов по умолчанию. Для примера сохраненной строки это было бы намного проще, чем мой первый пример:
searchable do
string :name, :stored => true
end
Генерирует имя поля name_ss
, соответствующее следующему dynamicField
, уже присутствующему в стандартной схеме Sunspot:
<dynamicField name="*_ss" stored="true" type="string" multiValued="false" indexed="true"/>
Вы также можете создать свой собственный field
или dynamicField
в своем schema.xml для хранения, но не индексирования, а затем использовать опцию Sunspot 1.2 :as
, чтобы указать соответствующее имя поля.
Например, более подробная версия выше. В вашей схеме:
<dynamicField name="*_stored_string" type="string" indexed="false" stored="true" />
А в вашей модели:
searchable do
string :name, :as => 'name_stored_string'
end