Ruby on rails 一起显示和排序多个查询
我想显示结合了来自多个查询的信息的数据。例如:Ruby on rails 一起显示和排序多个查询,ruby-on-rails,ruby-on-rails-3,activerecord,Ruby On Rails,Ruby On Rails 3,Activerecord,我想显示结合了来自多个查询的信息的数据。例如: @projects = @company.projects @assignments = @company.assignments @tasks = @company.tasks 我如何处理这三个查询并显示一个大表,其中显示项目、工作分配和任务,所有这些都按照在处创建的排序?预期结果如下所示: 7/11 Task created by company Xc for project Xp. 7/10 Project Xp created by
@projects = @company.projects
@assignments = @company.assignments
@tasks = @company.tasks
我如何处理这三个查询并显示一个大表,其中显示项目、工作分配和任务,所有这些都按照在处创建的排序?预期结果如下所示:
7/11 Task created by company Xc for project Xp.
7/10 Project Xp created by User U.
7/09 Task created by company Yc for project Yp.
7/09 Assignment created by company Yc for project Yp.
7/08 Project Yp created by user U.
如果您想做更复杂的事情,比如只获取最新的x条目或分页,那么可以使用SQLUNION
查询
如果您知道数据非常少,您可以将结果收集到一个数组中,并按created\u在
@events = @projects.to_a + @assignments.to_a + @tasks.to_a
@events.sort_by! { |e| e.created_at }
@事件。按排序!是的,那速记也很好。但我相信扩展形式更容易理解。