0

シンプルな ResumeBank アプリを作成したいと思います。

問題:

ユーザーとして、履歴書を 2 つだけ追加したいと考えています。この両方の履歴書のフォームは、2 つのフィールドのみで異なります。履歴書には 12 の同じ属性がありますが、2 つは異なります。

質問:

その Resume モデルとテーブルを ex: PolishResume と EnglishResume、polish_remsumes と english_remsumes に分割する必要がありますか?

または、STI を使用して PolishResume < Resume を作成し、1 つのテーブルを使用する必要があります。

分割オプションの欠点は何ですか?

4

1 に答える 1

0

古典的な継承はそれを解決するはずのようです

class ResumeBase{...}
class ResumeWith12Forms: public: ResumeBase{
     //use options to determine which unique 2 forms to show
     //options could be an enum or even boolean
     ResumeWith12Forms(options){ };
}

class User{ std::vector< std::shared_ptr<ResumeBase> userResume; }
于 2012-11-07T04:58:05.347 に答える