0

我有三个模型,任务、里程碑和细节。为了记录任务的历史,每次任务或里程碑更改时,都会在联结(连接)表中创建一个新的详细记录。

我的问题是创建一个可链接的查询来检索有关每个任务的最新信息。使用 .group 已经有一段时间了:

  @most_recent_details = Detail.order("updated_at DESC").group(:task_id)

但是当我尝试进一步过滤该集合时,例如验证某个里程碑的存在,上述排序被忽略并返回不包含在集合中的旧记录:

  @most_recent_details.where(milestone_id: 2)

任务
has_many :details

里程碑
has_many :details

详细信息
belongs_to :task
belongs_to :milestone
attr_accessible :task_title, :task_id, :milestone_id

更新

试图进一步澄清这个问题,这就是我希望应用程序以有效方式完成的任务:

查找每个 MILESTONE 的每个 TASK,如果该任务对应的最新 DETAIL 没有说没有任何分配的里程碑。

4

0 回答 0