忍受我一秒钟...
我有两个模型:HorseRaceEvent 和 Wagerable。
Wagerable 使用具有两个子类的 STI:Trifecta 和 Wager。
Trifecta 和 Wager 之间存在亲子关系。对于 Trifecta,有 3 个与之相关的投注。为了在 Wager 与其父 Trifecta 之间建立关联,我为 Wager 记录使用了 parent_id 列,该列引用了 Trifecta 记录。如果投注不是 Trifecta 的一部分,则 parent_id 为空。(Trifecta 的 parent_id 始终为空。)
所以:
- Trifecta 有很多赌注
- 赌注属于 Trifecta
现在输入 HorseRaceEvent。
- HorseRaceEvent 有很多赌注。
- 赌注属于 HorseRaceEvent。
注意:请注意,与 HorseRaceEvent 的关系是 Wager,而不是 Wagerable 或 Trifecta。(对于 Trifecta 记录, horse_race_event_id 始终为空。)
HorseRaceEvent 有一个称为“状态”的属性,它可以具有三种状态:未开始、开始、最终。
Wagerable 有一个名为“结果”的属性,该属性具有以下三个值之一:null、W、L。
这是挑战:
对于 Trifecta 模型,我想实现一个 named_scope 或静态方法,它返回所有 Trifecta,其中 (1) 结果为 null 并且 (2) 其子 Wager 的关联 HorseRaceEvent 中的每一个都是“Final”。