比如论坛帖子和文章,两个 model,
class Topic
belongs_to :node
end
class Article
belongs_to :node
end
他们都有 node,最简单的方法就是用两个 node,不同名字而已,不过这样设计好似不够简洁,
如果把帖子和文章两个各自的 node 都放在同一个 node 里面,然后用一个属性作为区别。
class Node
field Classable #Topic or Article
has_many :topics
has_many :articles
end
这样 has_many 就出现问题了···而且这也不属于 Polymorphic Associations。那应该要怎么设计才好呢?