我正在构建一个简单的博客应用程序,我想添加一个档案,人们可以点击一个月并显示该月的所有文章。这就像基于月份和年份的分组。例如,
文章:
- 2012 年 6 月
- 2011 年 5 月
因此,当单击某个日期时,它会将您带到一个页面并列出该月的所有文章。我怎样才能完成它?
我正在构建一个简单的博客应用程序,我想添加一个档案,人们可以点击一个月并显示该月的所有文章。这就像基于月份和年份的分组。例如,
文章:
因此,当单击某个日期时,它会将您带到一个页面并列出该月的所有文章。我怎样才能完成它?
2012 年 7 月:
require 'date'
month = 7
year = 2012
start_date = Date.new(year,month,1)
end_date = Date.new(year,month+1,1) - 1.day
articles_in_july = Article.where(:created_at => start_date..end_date)
您可以使用上述方法在控制台中进行测试。但是,在您的模型中,您可能想要:
def self.in_month(month,year)
start_date = Date.new(year,month,1)
end_date = Date.new(year,month+1,1) - 1.day
where(:created_at => start_date..end_date)
end
然后你可以调用:
Article.in_month(7,2012)
或者,假设用户 has_many 文章:
current_user.articles.in_month(7,2012)