Geo*_*Geo 1 ruby activerecord ruby-on-rails
在Rails应用程序中,我希望允许用户将消息从一个发送到另一个.所以,我有一个用户模型将具有:
has_many :messages
Run Code Online (Sandbox Code Playgroud)
我在想这个Message
模型将有一个from
字段,包含发送它to
的用户的id ,以及一个字段,其中包含要发送给它的用户的用户ID.Messsage模型的最佳实践是什么?我应该像这样生成它:
rails g model Message from:integer to:integer title:string content:text
我如何将其与用户相关联?我应该将它与2个用户关联,因为from
和to
字段引用现有用户吗?我怎么代表这种关系?我会在消息模型中写什么样的关系?belongs_to :user
?
我觉得应该有一种方法让Rails为我管理用户ID,这样我就不必自己创建整数字段了.
User
has_many :sent_messages, :class_name => "Message", :foreign_key => 'from'
has_many :received_messages, :class_name => "Message", :foreign_key => 'to'
Message
belongs_to :sender, :class_name => 'User', :foreign_key => 'from'
belongs_to :receiver, :class_name => 'User' :foreign_key => 'to'
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
103 次 |
最近记录: |