在我的 Rails 数据库方案中,有以下结构:
任务有很多工作工作属于一类
我想要实现的是加载所有任务以及按类别排序的所有相关作业。所以结果应该是这样的:
任务 1 作业 1 -> 类别 1 作业 3 -> 类别 2 作业 2 -> 类别 3
任务 3 工作 5 -> 类别 1 工作 9 -> 类别 2 工作 4 -> 类别 3
注意:类别的排序不是它们的ID,它是一个列。
目前唯一可行的解决方案是使用 Ruby 而不是 SQL 来排序作业,这非常糟糕。我只是偶然发现了 has_many 关联中的 :finder_sql 选项,但我不确定这是否可行。