Кто-нибудь смог отсортировать результаты поиска по запросу ThinkingSphinx для всего приложения?
У меня есть следующие настройки:
class Resource < ActiveRecord::Base
# ...
define_index do
indexes :title, :as => :sortable_name, :sortable => true
indexes :tease
indexes :description
indexes authors(:name), :as => :author, :facet => true
end
end
и
class Author < ActiveRecord::Base
# ...
define_index do
indexes :name, :as => :sortable_name, :sortable => true
indexes :title
indexes :bio
end
end
Я хочу иметь возможность искать по этим моделям (а также по 2 другим) и сортировать результаты по алфавиту. Поля, по которым нужно сортировать, могут иметь разные имена, поэтому я индексирую их, используя: as =>: sortable_name (предложения по улучшению этого способа приветствуются).
Следующие все работают как шарм:
Author.search 'something', :order => :sortable_name
Resource.search 'something', :order => :sortable_name
ThinkingSphinx.search 'something'
Но когда я пытаюсь
ThinkingSphinx.search 'something', :order => :sortable_name
Я получаю это:
ThinkingSphinx::SphinxError: index author_core,resource_core: sort-by attribute 'sortable_name' not found
Явное ограничение поиска этими классами с помощью: classes => [Author, Resource] не помогает. Я совершенно не понимаю, как здесь работает Сфинкс ...
Я перестроил свой индекс и остановил / начал процесс searchd, все с тем же результатом.
Rails 3.0.5 и ThinkingSphinx 2.0.2
Есть предложения?