2017-10-14 173 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