从多个模型创建一个类 - Rails

时间:2017-02-12 21:29:52

标签: ruby-on-rails activerecord

我有4个模型,每个模型定义如下

--Model/Table--
Competition
Matches
Goals
Teams

这4个模型完成了一个赛季的足球联赛数据。已定义这些表之间的关系。现在,我想创建一个类,它从所有4个模型中获取数据并生成1个新类。像这样:

class CompetitionSeason < ApplicationRecord
    # Use data from all 4 models to construct a soccer season class
end

这是我的意图,但我不确定这是否是这样做的最佳做法。在Rails框架级别上感觉错误。实现这一目标的最佳做法是什么?

谢谢。

1 个答案:

答案 0 :(得分:0)

你应该有另一个名为Season的模型,或者其中一些拥有(has_(one|many))每个成分的模型。

我不确定Competition是什么。

Match可以属于Competition或直接属于Season。我不明白Competition是什么,所以我无法做出好的推荐。

Goal应该属于MatchCompetition,而不是直接属于Season。通过SeasonMatchCompetition仍然可以有很多目标。

Team应该有一个SeasonTeam联结表。