如何使用rails仅列出从数据库中特定日期到现在的年份?
Posted
技术标签:
【中文标题】如何使用rails仅列出从数据库中特定日期到现在的年份?【英文标题】:How to list down Only the years from specific date on database up to now, using rails? 【发布时间】:2021-08-18 10:28:33 【问题描述】:我想在下拉列表中显示年份列表,该列表从现在到数据库表中的“建立时间”日期。这些年份列表应该是指向另一个页面的年份链接列表。
【问题讨论】:
【参考方案1】:在控制器中:
@club_years = @club.established_on.year..Date.today.year
鉴于:
<% @club_years.each do |n| %>
<%= link_to n, '#', class: 'dropdown-item' %>
<% end %>
【讨论】:
【参考方案2】:假设您的模型称为Post
,那么您可以通过查询从数据库中获取不同的年份,
Post.distinct.select("date_trunc('year', created_at) AS creation_year")
这将为您提供 created_at 列中存在的所有不同年份。然后,如果您想按年份过滤帖子,您可以使用,
Post.where("date_trunc('year', created_at) = '2021-01-01T00:00:00.000Z'")
【讨论】:
以上是关于如何使用rails仅列出从数据库中特定日期到现在的年份?的主要内容,如果未能解决你的问题,请参考以下文章
如何获取数据列表,特定日期仅从每个日期获取 6 条记录而不是更多
在 Rails 中将 2 个表导出为 CSV [如何选择特定列?]