Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 修改SQL查询以与';将分页';红宝石色_Ruby On Rails_Ruby_Ruby On Rails 3_Will Paginate_Kaminari - Fatal编程技术网

Ruby on rails 修改SQL查询以与';将分页';红宝石色

Ruby on rails 修改SQL查询以与';将分页';红宝石色,ruby-on-rails,ruby,ruby-on-rails-3,will-paginate,kaminari,Ruby On Rails,Ruby,Ruby On Rails 3,Will Paginate,Kaminari,我使用以下SQL查询从mySQL数据库中获取一些行: SELECT code_ver, result FROM mastertest WHERE date >= DATE_SUB( (CURDATE()) , INTERVAL 90 DAY) ORDER BY date DESC; 这个查询提供了过去90天的数据。现在我想在我的html.erb页面(视图)中一次显示10天的数据。我知道可以使用“will_paginate”和“kaminari”gems进行分页。但是我不知道如何在上面显示

我使用以下SQL查询从mySQL数据库中获取一些行:

SELECT code_ver, result FROM mastertest WHERE date >= DATE_SUB( (CURDATE()) , INTERVAL 90 DAY) ORDER BY date DESC;
这个查询提供了过去90天的数据。现在我想在我的html.erb页面(视图)中一次显示10天的数据。我知道可以使用“will_paginate”和“kaminari”gems进行分页。但是我不知道如何在上面显示的特定条件下查询数据库


有人能帮我处理一下这里的代码吗?

这是在ActiveRecord中构造代码的方法:

Mastertest.where('date >= ?', Time.now - 90.days ).order('date DESC').select("code_ver, result")
从这里,您可以链接will_paginate或kaminari方法,或者根据需要滚动自己的方法。如果要经常使用该查询,可能需要将其滚动到类方法中:

class Mastertest
  def self.last_90_days
    where('date >= ?', Time.now - 90.days ).order('date DESC').select("code_ver, result")
  end

  ## here's a simple pagination example:
  def self.page(page,per_page)
    limit(per_page).offset((page - 1) * per_page)
  end

end

Mastertest.last_90_days.page(1,20) #=> [...]