Sunspot - solr - Как сделать точный матч
articles = Article.search do |s|
s.fulltext "Java Script"
end
Как сказать солнечному пятну, как дать мне все результаты, которые точно соответствуют "Java Script"
Прямо сейчас я получаю результаты, такие как "Java, Unix Scripting"
(Я думаю, что его край n грамм, который я использую для создания, принимает этот сценарий)
Я нашел пару вопросов в переполнении стека. к сожалению, ни одно тело не ответило так, как я хочу. Поэтому я размещаю этот вопрос здесь. Я прошу модераторов не отмечать его как дубликат
Ответы
Ответ 1
Вот что вы можете добавить к контроллеру, чтобы "Quoted Values" вернули точное соответствие.
@search = Program.search do
fulltext params[:search].gsub( '"', '"\\' ) unless params[:search].blank?
//...
end
Если у вас есть такой текст, который выполняется поиск...
the fox jumped over the tree
-
Поиск fox over возвращает 1 строку.
-
Однако поиск "лисицы над" (в кавычках) будет возвращать 0 строк.
-
Поиск "fox jumped" (также в кавычках) возвращает 1 строку. Это точное совпадение.