Ruby on rails Ruby on Rails-Railscast#213日历按日期时间而不是日期排序

Ruby on rails Ruby on Rails-Railscast#213日历按日期时间而不是日期排序,ruby-on-rails,ruby,datetime,calendar,railscasts,Ruby On Rails,Ruby,Datetime,Calendar,Railscasts,我正在构建一个包含日历的应用程序。我发现,尽管有日期,但用于制作日历的铁路费用证明是非常有用的。我把所有的东西都准备好了,我只是想让每个日期的内容按照日期时间而不是日期来组织,这样它们就会按照正确的时间顺序出现 我当前的控制器如下所示: def index @lessons = Lesson.all @lesson_by_date = @lessons.group_by { |i| i.lesson_date.to_date } @date = params[:date] ? Dat

我正在构建一个包含日历的应用程序。我发现,尽管有日期,但用于制作日历的铁路费用证明是非常有用的。我把所有的东西都准备好了,我只是想让每个日期的内容按照日期时间而不是日期来组织,这样它们就会按照正确的时间顺序出现

我当前的控制器如下所示:

def index
  @lessons = Lesson.all
  @lesson_by_date = @lessons.group_by { |i| i.lesson_date.to_date }
  @date = params[:date] ? Date.parse(params[:date]) : Date.today
end

任何帮助都将不胜感激。谢谢

我不再假设你的问题是如何按日期时间组织我的@课程。我将提到几个不同的场景。我有点受限,因为从你的帖子中我不知道你是如何组织表格的模式的,但我认为控制器给了我一个大概的想法

(一) 您应该替换:

@lesson = Lesson.all
@lesson_by_date = @lessons.group_by { |i| i.lesson_date.to_date }
用更快的东西:

@lesson_by_date = Lesson.order('lesson_date')
(二) 如果你想知道为什么你当前的代码不起作用,那是因为你的分组正试图将i.lesson日期转换为日期,即转换为日期。相反,你可能想尝试使用datetime


3) 我想回顾一下你的问题是什么?