我正在尝试在我的Rails应用程序中找到与搜索广告关键字搜索最接近的匹配。在我的搜索控制器中,我有
class SearchController < ApplicationController
def index
q = params[:q]
@courses = current_academy.courses.search(title_cont: q).result
@teachers = current_academy.teachers.search(firstname_cont: q).result
@articles = current_academy.articles.current_locale.search(title_cont: q).result
end
end
我认为
<form accept-charset="UTF-8" method="post" action="{{ request.url_helpers.search_path }}">
<label for="q">Search for:</label>
<input id="mySearch" name="q" type="text" value="" />
<input name="authenticity_token" type="hidden" value="" />
<input type="submit" value="Search" />
</form>
目前,假设课程标题为“数字课程”,则对“数字”的搜索查询将找到该课程。问题是搜索查询如“ digital zzz”将不返回任何内容,因此找不到该课程。
我如何确保搜索查询会使用ransack返回最匹配的记录。我已经尝试了其他ransack谓词,但无法使其正常工作。我想知道最好的方法。