делает трюк. Спасибо!
ользуюsunspot
, Как я могу запуститьLIKE
запрос (LIKE %q%
)? Я хотел бы сделать что-то вроде этого:
@search = Sunspot.search(User) do |q|
q.text_fields { with(:company_name).like(params[:q]) }
end.results
вместо:
@search = Sunspot.search(User) do |q|
q.text_fields { with(:company_name).starting_with(params[:q]) }
end.results
что частично работает для меня. Рассматриваяsunspot
код, я нашел этот кусок кода:
class StartingWith < Base
private
def to_solr_conditional
"#{solr_value(@value)}*"
end
end
Он в основном генерирует следующий хэш поиска пятен:
Sunspot.search(User) do |q|
q.text_fields { with(:company_name).starting_with("sta")} }
end
=> Sunspot::Search:{:q=>"*:*", :fq=>["type:User", "company_name_text:sta*"]}
В случае, если нет более простого способа реализацииLIKE %query%
как мне создать новый классLike
с методомto_solr_conditional
которая генерирует логику SOLR?