我有一个简单的应用程序与用户模型,角色模型,与收件人的消息模型。 用户通过角色 发送了很多消息,角色通过收件人发送了很多消息,并且用户还通过收件人发送了很多消息。如何连接Rails中的两个ActiveRecord查询
收件人模型具有USER_ID,ROLE_ID和MESSAGE_ID
,现在我想显示包括他的角色的消息和在一个查询他的个人信息的用户的所有邮件。我怎样才能做到这一点。
role model
has_many :recipients
has_many :received_messages, :class_name => 'Message', :order => 'created_at desc', through: :recipients
user model
has_many :roles
has_many :received_messages, :class_name => 'Message', :order => 'created_at desc', through: :roles, :uniq => true
has_many :recipients
has_many :private_messages, :class_name => 'Message', :order => 'created_at desc', through: :recipients
message model
has_many :recipients
has_many :roles, :through => :recipients
has_many :users, :through => :recipients
所有这些在地方我要去如何获取用户的消息都他的角色的消息,他的私人信息
例如把所有的消息是
def all_messages
@all_messages = current_user.#all messages scope here#
end
你有has_many:用户模型的角色。这意味着角色模型右边有一个belongs_to:用户? – jvnill 2013-03-10 01:09:36