2016-04-21 174 views
1

有人使用範圍模型的Searchkick?我有一個Article模型scope :published, ->{ where(status: "Published") }。 所以在我ArticleController我做了以下內容: query = params[:q].presence || "*" @search = Article.published.search(query, operator: "or", suggest: true) Searchkick過濾器與範圍

,但它沒有工作https://github.com/ankane/searchkick/issues/140並保持在內的所有記錄

所以我做: query = params[:q].presence || "*" @search = Article.search(query, where:{status: "Published"}, operator: "or", suggest: true)

也不能工作..並沒有任何回報。 不知道我在做什麼錯。

+0

這個問題#140似乎沒有解決呢。 想知道爲什麼第二個「where」沒有工作,你確定它是'Published'而不是'published'嗎? –

回答

1

我只是需要加入statussearch_data哈希

class Article < ActiveRecord::Base 

    searchkick highlight: [:title], text_start: [:title], language: "spanish" 

    scope :draft,  ->{ where(status: "Draft") } 
    scope :published, ->{ where(status: "Published") } 
    scope :scheduled, ->{ where(status: "Scheduled") } 

    def search_data 
    { 
     title: title, 
     content: content, 
     status: status  <-------- 
    } 
    end