在这个问题上,我一直在绞尽脑汁 所以我有趣搜索搜索
@search=Sheet.ransack(params[:q])
最近,我发现这个名为模糊的宝石。这会将find_by_fuzzy_title
方法添加到工作表中。
我找不到与hansack的集成,所以我几乎是靠自己
我确实尝试了一些集成...特别是通过从模糊搜索中提取ID并将它们传递给ransack,反之亦然..但这些似乎在订购时存在问题
任何支持模糊搜索的搜身宝石都会受到赞赏
答案 0 :(得分:0)
我没有尝试过,但我想你可以将find_by_fuzzy方法添加到模型上的可搜索范围,而ransack会将参数传递给模糊搜索范围。您可能只能传递一个参数,因此您的范围可能必须有默认值
class MyModel < ActiveRecord::Base
fuzzily_searchable :name
def self.ransackable_scopes(*args)
%w(find_by_fuzzy_name)
end
end
然后你会这样搜索:
MyModel.ransack(find_by_fuzzy_name: "mysearchterm").result