Примечание: Я использую Sunspot с Rails, но общий ответ Solr может по-прежнему направлять меня в правильном направлении, если вы не знакомы с DSL Sunspot.Как повысить результаты поиска Solr по типу документа?
У меня есть несколько моделей, подобные этим:
class Book < ActiveRecord::Base
searchable do
text :title, boost: 2.0
text :content
end
end
class Article < ActiveRecord::Base
searchable do
text :title, boost: 2.0
text :content
end
end
Я Нуждаясь сделать полнотекстовый поиск во всех моделях, в то же время для смешанного результата, но статьи следует рассматривать немного более актуальной чем книги в результатах поиска.
Мой текущий код для выполнения поиска выглядит следующим образом.
search = Sunspot.search do
fulltext search_terms, minimum_match: 1
end
Это правильно возвращает смешанные результаты, но мне нужно, чтобы результаты Статьи были увеличены по сравнению с результатами Книги. Я хочу быть ясно, что это НЕ то же самое, что перечислять все результаты статьи сначала, а затем перечислять все результаты книги. Там может быть некоторое сочетание в зависимости от того, как Solr оценивает результаты на основе их общего содержания.
Я предполагаю, что мне нужно будет использовать некоторую функцию повышения, но не могу точно определить, как именно.
Любые указатели?