sql - Rails 4 查询按月和年排序

标签 sql ruby-on-rails ruby

我无法找到执行此操作的最佳方法,但本质上我有一个博客,我想在其中显示所有已发布博客的月份和年份的存档。单击“2012 年 5 月”链接将带您查看同一年该月之间撰写的所有博客(例如:2012 年 5 月 5 日、2012 年 5 月 20 日...)。有没有办法只使用 created_at 并传递数字月份和年份的参数来获取同一年同一个月内的所有记录?总体而言,是否有更好的方法来做到这一点。

最佳答案

在你的 Controller 中尝试这样的事情:

month = Date.new(params[:year], params[:month])
@entries = Blog.where(created_at: month.all_month)

#all_month 方法将创建一个包含月份开始和结束的范围,并在 where 子句中传递一个范围,对日期进行 BETWEEN 查询。

关于sql - Rails 4 查询按月和年排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26239871/

相关文章:

ruby-on-rails - 在 Rails 中合并两个具有匹配 ID 的 JSON

SQL 查询 : concatenate many columns of string type in one

c# - asp.net如何同时执行多条sql命令

ruby-on-rails - ActiveRecord 其中字段 = ?可能值的数组

ruby-on-rails - 具有不同 HTTP 请求类型的两个路由如何共享相同的名称?

javascript - 将 <strong> 标签应用于我的 js.coffee 文件中的字符串

mysql - csv文件格式,用于使用php上传mysql数据库中的大量数据

sql - 没有找到列?

ruby-on-rails - 是否可以获得 rails 中可用布局的列表(包括来自引擎的布局)?

ruby-on-rails - 在 rails 中找不到 pg_dump