2017-10-14 72 views
0

我目前正在創建一個使用大量數據的應用程序。爲了處理這些數據,我使用了jquery的數據表的分頁(will_paginate gem)。Ruby on Rails:在datatables搜索查詢中使用elasticsearch

我遵循railscast(http://railscasts.com/episodes/340-datatables?view=asciicast)的教程,但在視頻的某個時候,有人提到要實現數據表的搜索查詢,可以使用sphinx或solr。經過幾個小時的研究,我偶然發現了與sphinx和solr類似的elasticsearch。最後我決定使用elasticsearch。

問題: 我找不到任何有關將will_paginate,jquery的數據表和elasticsearch結合起來的文章或教程。我只需要一個參考知道從哪裏開始實施。任何人?

回答

0

由於我在幾年前在應用程序中實現了Elasticsearch,我使用Elasticsearch結果來映射ID,然後我對ID進行了查詢以查詢我的SQL數據庫。

這樣我仍然可以使用WillPaginate和其他寶石,但我避免了昂貴的基於文本的查詢到我的數據庫。

所以在你的控制器:

ids = elasticsearch_result.map(&:id) 
@items = Item.where(id: ids) 

然後在您的視圖:

<%= will_paginate @items %> 
+0

謝謝,我現在就試試這個。 – Thorax