我应该拆分这个模型和表吗?

时间:2012-11-02 00:02:07

标签: ruby-on-rails ruby-on-rails-3 activerecord sti

我想创建一个简单的ResumeBank应用程序。

问题

作为用户,我只想添加两份简历。 这两个简历的表格不同,只有两个字段。 简历有12个相同的属性,但有2个不同。

问题

我应该将Resume模型和表格拆分为ex:PolishResume和EnglishResume,polish_remsumes和english_remsumes吗?

或者我应该使用STI并创建PolishResume<恢复并使用一个表。

拆分选项的缺点是什么?

1 个答案:

答案 0 :(得分: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; }