2016-04-18 128 views
1

我有一個'feed'模型,has_many條目,這些都顯示在一個頁面上。 Searchkick全部設置並且像默認搜索欄一樣具有魅力,但不幸的是,我似乎無法弄清楚如何使用按鈕來完成搜索。Searchkick按鈕過濾

我試圖使用Searchkick通過按鈕點擊進行搜索(點擊顏色白蘭地,得到所有匹配顏色白蘭地等的結果)。我在它的文檔中看到了這個名爲'Aggregation'的例子,這個例子是{color:「brandy」}。

我需要爲控制器/模型中的每個過濾器創建單獨的方法嗎?然後用按鈕點擊來調用它們?我將如何去處理多個?

+0

你跟一個Ajax請求發送的搜索參數?你可以分享你的搜索條形碼,以便我們看到它需要如何修改? –

+0

我實際上只是試圖構建類似於服裝網站上的過濾器的簡單按鈕。例如點擊'尺寸M'它篩選中等衣服 – Jonathan

回答

1

不,您不會向控制器添加新操作。擴大對聚集例如從Searchkick的doc:在視圖控制器

def filters 
    allowed_filters = %w(color size) 
    filters = params.select{|k, v| allowed_filters.include?(k) } 
end 
helper_method :filters 

= link_to 'color brandy', {action: 'index', filters.merge(color: 'brandy'}, class: 'ui-button' 
+0

感謝您的回答,但我將如何去添加到視圖等? – Jonathan

+0

查看?爲什麼?那幾條線進入控制器。 啊,我看到按鈕。在這種情況下,在您的控制器中使用'filters'作爲一種方法。我會把代碼放在這裏,評論這裏不要做linelines:https://gist.github.com/TomK32/6ef879faec9e999cd41a8948b9f3cdaf –

+0

嗨,托馬斯,你可以編輯答案,這樣可以幫助每個人:)我猜視圖按鈕可以被複制和粘貼以製作其他過濾器。 – Jonathan