【发布时间】:2012-04-23 14:01:12
【问题描述】:
我需要在“事件”模型中添加一些关于“子事件”的信息。例如,事件可能是比赛,子事件可以是目标(我也需要跟踪前锋和分钟)、替换或其他。实现这一点的最佳方法是什么?我认为这不是为目标创建新模型的好解决方案,我希望所有信息都保留在 Match 模型中。
【问题讨论】:
标签: database arrays ruby-on-rails-3 stack
我需要在“事件”模型中添加一些关于“子事件”的信息。例如,事件可能是比赛,子事件可以是目标(我也需要跟踪前锋和分钟)、替换或其他。实现这一点的最佳方法是什么?我认为这不是为目标创建新模型的好解决方案,我希望所有信息都保留在 Match 模型中。
【问题讨论】:
标签: database arrays ruby-on-rails-3 stack
也许可以通过“属于自己”的关联来完成。
看看这个:Rails 3 - A model with a one to one relationship to itself - do I need belongs_to
答案建议使用ancestry gem,或者简单的belongs_to关联:
belongs_to :event, :foreign_key => "parent_event_id"
此外,在您的模型中,您应该添加“event_type”列并在此处输入“匹配”、“目标”或任何您想要的内容。
【讨论】:
在我看来,创建Goal 模型是一个很好的解决方案,它将belongs_to 一个Match 和一个Striker 并在它发生时存储信息(分钟)。
【讨论】: