Этот вопрос задавался несколько раз раньше и отвечал, но ни одно из предложений, похоже, не работает в моем случае.Rails 4 и Sunspot: поиск по нескольким родственным моделям
У меня есть модель пользователя и модель Micropost
Пользователь имеет много microposts, micropost имеет один пользователь.
Я пытаюсь выполнить поиск по модели пользователя и модели микропоста одновременно с помощью Sunspot.
Все, что мне нужно, это правильный синтаксис для индексирования моделей.
Я попытался это:
class User < ActiveRecord::Base
searchable do
text (:full_name)
text (:last_name)
text (:first_name)
text (:email)
text (:job_title)
text (:city)
text (:country)
text (:address)
text (:tag_list)
text (:content) { micropost.content }
end
end
на основе
sunspot solr how to search multiple models correctly? All examples online fail
, но это не работает. Все, что мне нужно, - это поиск атрибута содержимого микросоты выше. Поэтому, если человек ищет пользователя, он получает пользователя, если они ищут определенную фразу, которая встречается в micropost.content, они получают микроскопию (ы) с этой фразой.
Документация на этом не помогает, насколько я могу судить.
К сожалению, я получаю эту ошибку «неопределенный метод' MODEL_NAME»для # <Веснушка :: Поиск :: StandardSearch: 0x007fa64e187648>» – GhostRider
Если у вас есть существующие данные в БД сделать обязательно запустите 'rake sunspot: solr: reindex' для индексации. Для новых данных индексирование будет выполняться с помощью крючка. @GhostRider, перед «индексированием» перезагрузите ваш сервер. – Emu