Мне удалось успешно реализовать базовый полнотекстовый поиск, однако любые запросы, включающие модели от многих ко многим отношениям, не работают для меня, когда я пытаюсь использовать области («с утверждениями»). Я знаю, что соответствующие строки находятся в БД, поскольку мои операторы sql возвращают данные. однако запросы солнечных пятен не дают никаких результатов ... я уверен, что это, вероятно, новичок с моей стороны ... любая помощь будет принята с благодарностью ... так что мы идем ...
Мои модели
class User
has_one :registration
searchable do
text :first_name
text :last_name
text :email
end
end
class Registration
belongs_to :user
has_many :registration_programs
has_many :programs, :through => :registration_programs
searchable do
integer :user_id
integer :registration_status_id
end
end
class RegistrationProgram
belongs_to :registration
belongs :program
searchable do
integer :registration_id
integer :program_id
end
end
Мой запрос в контроллере
@search = Sunspot.search(User, Registration, RegistrationPrograms)do
# this works fine with the frame, lame, email fields "on its own"
fulltext params["instructor-search"]
any_of
all_of
with(:class => Registraion)
with(:registration_status_id, 3)
end
all_of
with(:class => RegistraionProgram)
with(:program_id, 1)
end
end
end
В базе данных есть записи, которые имеют foo как f_name и 3 и 1 идентификаторы для их статуса reg и полей программы. однако я не могу получить Sunspot / websolr, чтобы получить их ... единственный раз, когда у меня был приведенный выше запрос, - это когда я запускаю все три критерия "по отдельности" ...! Всякий раз, когда я объединяю их, я не получаю никаких возвращаемых строк.
Любая помощь / предложения будут с благодарностью …….