Rails 3:在我的rails应用程序中设置私人消息?

时间:2011-05-11 21:58:55

标签: ruby-on-rails

我正在我的应用程序中设置私人消息,并想知道最好的方法是什么,我有一个message模型有2列,to_id和{{1} }

我在消息模型中设置了关联,如下所示:

from_id

我如何在class Message < ActiveRecord::Base belongs_to :recipient, :class_name => 'User', :foreign_key => "to_id" belongs_to :sender, :class_name => 'User', :foreign_key => "from_id" end 模型中设置关系?我希望有一个user关联和一个:received messages关联。

谢谢

2 个答案:

答案 0 :(得分:3)

即使本教程是针对Rails 2制作的,逻辑仍然有用:

http://www.novawave.net/public/rails_messaging_tutorial.html

答案 1 :(得分:2)

您可以在两侧指定:foreign_key,如下所示:

class User < ActiveRecord::Base
  has_many :sent_messages, :class_name => 'Message', :foreign_key => 'from_id'
  has_many :received_messages, :class_name => 'Message', :foreign_key => 'to_id'
end

我知道Rails 3有一个:inverse_of选项你也可以通过,但我对此没有任何经验。