【发布时间】:2016-01-04 01:14:10
【问题描述】:
玩 Rails 的第一周,我有点卡在这种活跃的记录关系上
我现在有 3 张桌子,Events、Fights 和 Fighters。每场战斗都属于一个事件,战士可以进行多次战斗。我希望能够在战斗表中存储信息,例如获胜者、战斗如何获胜、裁判等。
我一直在做一些研究,我认为我需要一个双向的自我参照,有很多通过关系来进行战斗。这是否需要通过表中的 2 个条目?如果是这样,我如何在查看每个战斗显示没有 2 条记录的事件时查询战斗?
如果我想在战士页面上显示战士记录,存储获胜者的最佳方式是什么?表中有一个winner_id 和一个loser_id?当可以进行平局而没有比赛时,这会变得令人困惑。
也可能发生没有结果的战斗,因为它们还没有发生。我正在考虑为这些使用单独的表格。
非常感谢任何建议! 干杯
【问题讨论】:
标签: ruby-on-rails activerecord has-many-through self-reference bidirectional