2014-11-03 78 views
2

的has_many这里是我的结构:轨道4 - 包括与参数

  • A组的has_many用户。
  • 用户has_many任务。
  • 任务具有due_date。

我想要显示One Group,包括用户,以及他们各自的任务,按due_date过滤。

所以我的查询是这样:

group.includes(:users => :tasks) 

我想要做这样的事情:

group.includes(:users => :tasks(min, max)) 

其中min和max是DUE_DATE的时间间隔。但在包含内传递参数不起作用。它引发了一个语法错误。 我发现了一些关于lambda条件的东西,但我不能说这是否是Rails 3或Rails 4功能。它基本上很糟糕的记录。

回答

1

这是我最后还是没买:

time_range = Date.today.beginning_of_week..Date.today.end_of_week 
group.includes(:users => :tasks).where(tasks: { due_date: time_range }) 

很简单,但工程。