Использование sunspot_solr для поиска в массиве значений
Привет, я создал приложение Ruby on Rails с Sunspot Solr для поиска.
@search = Answer.search do
with(:question_id, @question_ids)
paginate :page => 1, :per_page => Answer.count
end
return question_id
Здесь я хочу найти эту модель ответа, используя массив question_ids (например: [1,2,3,4,5]).
Как это сделать? Пожалуйста, помогите мне.
1 ответ
Решение
Если ваш вопрос и ответ связаны как
class Question < ActiveRecord::Base
has_many :answers
end
class Answer < ActiveRecord::Base
belongs_to :question
end
тогда вы можете добавить поиск для вашей модели вопросов, как это
class Question < ActiveRecord::Base
searchable do
text :title, :body
text :answers do
answers.map { |answer| answer.body }
end
integer :questions_ids, :multiple => true
end
// your another methods
end
И в вашем индексе действий
@search = Answer.search do
with(:questions_ids, @question_ids)
paginate :page => 1, :per_page => Answer.count
end
return question_id
Я думаю, что это поможет вам.