我正在使用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是零
你已經運行'rake ts:index'或'rake ts:rebuild'? – claptimes
nope,會在一分鐘內嘗試 – Leo
是的,這就是我需要做的,我也刪除了來自think_sphinx.yml的min_infix_len:1,因爲它引發了一個錯誤,說前綴和infifes不能同時啓用。 thx – Leo