我有以下场景,我不确定是否应该使用类继承或单表继承:
Class User
has_one :main_list
has_one :known_list
has_many :regular_lists
end
Class List
has_many :words
end
Class Word
belongs_to :list
end
我想做的是让每个不同的列表类型成为不同的类,问题是如果我这样做,我需要将main_list_id
, known_list_id
, 和添加regular_list_id
到Word
对象/类中。这似乎很麻烦。我可以做类似的事情:
Class MainList
has_many :words, :foreign_key => list_id
end
然后是这样的:
@user.main_list.find_by_name("MainList")
?
唯一的问题是有人可以命名一个RegularList
“MainList”。