Mysql 如何使用Ruport/rubyonrails按天分组?
我正在尝试评估Ruport在我的Rails应用程序中的使用情况,但不确定如何获取带有日期/时间戳的一系列记录,并通过Ruport的分组功能对它们进行分组 如果Ruport没有意义,我愿意使用其他/更好的方法来进行同样的分组 没有ruport:Mysql 如何使用Ruport/rubyonrails按天分组?,mysql,ruby-on-rails,ruby,reporting,ruport,Mysql,Ruby On Rails,Ruby,Reporting,Ruport,我正在尝试评估Ruport在我的Rails应用程序中的使用情况,但不确定如何获取带有日期/时间戳的一系列记录,并通过Ruport的分组功能对它们进行分组 如果Ruport没有意义,我愿意使用其他/更好的方法来进行同样的分组 没有ruport: <% @posts.group_by {|p| p.created_at.at_beginning_of_day }.each do |day, posts| %> <h2><%= day.strftime("someth
<% @posts.group_by {|p| p.created_at.at_beginning_of_day }.each do |day, posts| %>
<h2><%= day.strftime("something...") %></h2>
<% posts.each do |post| %>
do stuff with `post`.
<% end %>
<% end %>
用“post”做一些事情。
根据您要分组的对象,在每个月的开始使用,在每个星期的开始使用,依此类推。不带ruport:
<% @posts.group_by {|p| p.created_at.at_beginning_of_day }.each do |day, posts| %>
<h2><%= day.strftime("something...") %></h2>
<% posts.each do |post| %>
do stuff with `post`.
<% end %>
<% end %>
用“post”做一些事情。
在月初使用,在周初使用,依此类推,根据您要分组的内容。我建议将@posts.group\u按函数移动到控制器中,而不是视图。我建议将@posts.group\u按函数移动到控制器中,而不是视图中。Ruport包含一种向表中添加新列的方法。因此,从时间戳源按日期分组可以这样做:
@table.add_column('created_at_date') { |r| r.created_at.to_date }
created_at_date_grouping = Grouping(@table, :by => "created_at_date")
当然,此方法也可用于生成更有趣的报告,如Google Analytics:
@table.add_column('day_of_week') { |r| r.created_at.strftime('%a') }
@table.add_column('hour_of_day') { |r| r.created_at.strftime('%H') }
但不了解性能。Ruport包含一种向表中添加新列的方法。因此,从时间戳源按日期分组可以这样做:
@table.add_column('created_at_date') { |r| r.created_at.to_date }
created_at_date_grouping = Grouping(@table, :by => "created_at_date")
当然,此方法也可用于生成更有趣的报告,如Google Analytics:
@table.add_column('day_of_week') { |r| r.created_at.strftime('%a') }
@table.add_column('hour_of_day') { |r| r.created_at.strftime('%H') }
但不知道性能。您是否决定不使用ruport?我希望能和ruport一起做这件事你决定不带ruport做这件事吗?我希望能和鲁波特一起做到这一点,这对我现在帮助很大。谢谢我希望我能再投票几次,这对我现在有很大帮助。谢谢我希望我能再投票几次。