考虑以下我有消息应该通过线程耦合在一起。我最终得到了这样的架构:Message
belongs_to Thread
和Thread
has_many Messages
。这里的关键是能够将所有相关消息发送给我正在使用的消息。
class Message < ActiveRecord::Base
attr_accessible :title, :body
belongs_to :thread
has_many :messages, through: :thread
end
class Thread < ActiveRecord::Base
has_many :messages
end
然而,我有点担心有一个空白模型。名为Thread
的模型中没有任何有意义的属性。它只是一个包含主键序列的表。
我有想法把它变成一棵树,但它看起来也太重了。
你怎么看?如何组织几个模型和一个空白模型?
答案 0 :(得分:0)
为什么需要线程表?我建议你应该使用单表继承。添加
parent_message_id
在您的消息表中并使用此id
获取同一线程的所有消息