나는 이정표, 직장, 고등학교, 대학의 다른 유형을 두 가지 모델 FUTUREMAP
및 MILESTONE
STI 또는 다형성 모델을 사용해야합니까?
FUTUREMAP
class Futuremap < ActiveRecord::Base
attr_accessible :name
has_many :milestones
end
이정표
class Milestone < ActiveRecord::Base
attr_accessible :description, :type
belongs_to :futuremap
end
을하는이 있고 지금 나는 속성이 다르다는 것을 알리는 것 type
. 그러나 그것은 위대한 디자인이 아닙니다.
이것은 내가 유형이 직장이고 그 대학이 적을 때 정보를 저장해야한다는 것을 알기 때문입니다.
다른 유형의 하위 클래스를 만들거나 마일스톤을 다형성 모델로해야합니까? 어떻게하면 더 좋은 디자인을 만들 수 있습니까? 어떤 제안이나 아이디어라도 환영합니다.
정확히이 디자인에 대해 마음에 들지 않는 부분은 무엇입니까? –
@SergioTulentsev, 다른 유형에는 다른 속성이 있습니다. 직업은 5 가지 특성을 지니고 있으며 대학은 3 가지를 가질 수 있습니다. – SHUMAcupcake
한 번 읽으면 누군가가 "Gang of Four"의 "책에서"워드 프로세서를 썼습니다. 이 프로그램은 실제 기계식 타자기보다 느 렸습니다. 그래서 overdesign하지 말아라. –