Поиск половины заголовка с помощью pgsearch

Я использую pgsearch для поиска. Я написал ниже код в моей модели.

Кино.рб

pg_search_scope :search_it, :against => Movies.attribute_names,
:associated_against => {
:tags => [:name]
}

И я использую его в контроллере следующим образом:

if (params[:search].blank?)
@movies_filter = Movies.all
else
movies_filter = Movies.order(:name).search_it(params[:search])
end

Теперь проблема в том, что я хочу показать результат мстителей только в том случае, если выполняется поиск av,gers,ven. Я получаю результат, если я ищу мстители (полное слово).


person Amit Shinde    schedule 14.03.2018    source источник


Ответы (1)


Попробуйте следующее

include PgSearch

pg_search_scope :search_it, against: [:attribute_names],
  associated_against: {tags: :name} 

Текстиль и PgSearch

Метод text_search становится немного запутанным, и он станет только хуже, если мы будем искать по большему количеству столбцов. К счастью, здесь есть драгоценный камень, который может помочь. Texticle упрощает полнотекстовый поиск в Postgres. Чтобы использовать его, нам просто нужно добавить его в gemfile приложения, а затем запустить bundle для его установки.

gem 'texticle', require: 'texticle/rails'

Вот полный эпизод Rails pg_search, который вы можете увидеть.

Надеюсь, это поможет.

person fool-dev    schedule 14.03.2018