Kaminari在铁轨上的条件分页

时间:2012-09-20 21:20:35

标签: pagination ruby-on-rails-3.2 kaminari

我正在尝试为我的rails项目中的Kaminari分页添加条件,我发现它几乎是不可能的。这是我的代码

  UserController
#feed=Feed.order('created_at desc').page(params[:page], :conditions=>["source=? or        source=?","beep","sub_beep"])

上面没有用,所以我尝试了以下

  @feed1 = Feed.find(:all,:conditions=>["source=? or source=?","beep","sub_beep"])
  @feed= Kaminari.paginate_array(@feed1).page(params[:page]).per(2)

以上显示内容但每页显示2个内容并且显示的元素不是有序的。

我需要一种方法来为kaminari分页添加条件并订购结果

请我帮忙!!! :(

1 个答案:

答案 0 :(得分:2)

Kaminari仅适用于ActiveRecord 3+样式查询界面。

请避免使用:conditions“Hasheritis”语法,该语法迟早会被弃用,而是使用where方法链接。

Rails指南中详细记录了where方法的用法:http://guides.rubyonrails.org/active_record_querying.html#conditions

您的控制器代码应如下所示:

feeds = Feed.where(:source => ['beep', 'sub_beep']).order('created_at desc').page(params[:page])