我正在使用 ThinkingSphinx 进行通过 Book 模型的简单搜索。我的 book_indexes.rb 看起来像这样:
ThinkingSphinx::Index.define :book, with: :active_record do
indexes title
indexes author
indexes publishing_date
indexes isbn
end
控制器动作看起来像这样
def index
@books = Book.search(params[:search])
end
到目前为止,一切都按预期工作,当我输入“圣经”时,它会返回名为“圣经”的书。但是是否有可能获得不基于例如整个标题的搜索结果?用更简单的话来说,每当我搜索“围兜”或“b”时,我都想得到“圣经”。
编辑
我的thinking_sphinx.yml 现在是:
development:
enable_star: true
min_infix_len: 1
min_prefix_len: 1
和控制器动作:
@books = Book.search("*#{params[:search]}*")
但它仍然可以正常工作,只是没有任何查询,在加载页面后,@books 为 nil