我正在使用Rails 3.2.8构建一个webapp。 在这个应用程序中我有三张桌子。项目,任务和子任务。
项目
id, name
任务
id, name, project_id
子任务
id, name, desc, task_id, value
我想获得属于项目的所有子任务,并总结这些值并按created_at对它们进行分组。
这是我尝试但它不起作用(只有AR关系)。
@tasks = @project.tasks.joins(:subtasks).select('sum(subtasks.value)').group('subtasks.created_at')
我做错了什么?
感谢所有人的帮助!
答案 0 :(得分:1)
我认为你比你意识到的更近。
您提供的链中的每个方法都会产生ActiveRecord::Relation
。您需要做的只是调用all
或each
或其他一些方法来强制它执行查询。
我认为您还打算按tasks.created_at
分组?
最后,我建议你在Task
模型中创建一个类方法来简化这一点。
我希望有所帮助。