1

有没有办法在一个单词之后和一个单词之前使用通配符,如下所述..

User.search "*" + "admi"+"*"

或使用 SearchKick gem 解决此类问题的任何其他解决方案。

4

1 回答 1

2

希望还不算太晚。

您希望关键字出现在文本中间,对吗?您应该使用部分匹配作为您的搜索选项。

例如,在模型用户中:

class User < ActiveRecord::Base
  searchkick text_middle: [ :name ]
end

搜索:

User.search("admi", fields: [{name: :text_middle}]).each do |user|
  # Do something with user
end

如果搜索结果为空,请User.reindex在搜索前尝试。

于 2015-10-03T02:52:40.470 回答