2017-08-16 43 views
0

我正在构建一个活动Feed,向您展示您的朋友一直在做什么。我可以用下面的查询进行分页朋友数据:如果没有结果,活动Feed使用新标准的分页

friend_ids = current_profile.friend_ids 
@activities = Activity.where(profile_id: [friend_ids]).order('created_at desc').page(params[:page]) 

我想为当从你的朋友没有更多的内容添加逻辑,然后使用二度连接数据,然后使用所有的公共活动。有没有一个简单的方法来做到这一点?

,我正在考虑的方法是增加一个变量,它说,如果当前页面是指friendsfriends_of_friendseveryone所以后来查询与正确friend_ids更新,将排除以前的朋友的ID。

有没有更简单的解决方案?或者,您可以指向我的代码解决了在没有找到分页结果时冒泡活动提要结果的问题?

回答

1

Kaminari的默认记录per_page是25,所以你可以使用它来找出最后一个页码是什么,并有条件地使用它来拉入其他数据。

另一种选择可能是确保@activities长度是25(或者每页最多的记录数量很多)。如果数量较少,则知道您已达到数据的结尾,并且可以采取相应措施。