引用Mongoid中另一个文档中的两个相同文档

时间:2014-02-22 00:48:35

标签: ruby mongoid

我正在尝试存储消息,我想在User reference中存储和存储,如下所示:

class Message
  include Mongoid::Document
  include Mongoid::Timestamps

  field :from, type: Moped::BSON::ObjectId
  field :to, type: Moped::BSON::ObjectId
end

class User
  include Mongoid::Document
  field :username, type: String
end

上述方法是否正确?我可以想象一种方法是将User创建为自定义类型,但这似乎是一个漫长的方向。理想情况下,我希望能够直接引用用户:message.from.usernamemessage.from['username'],并且能够验证from和to字段的存在。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

class Message
  belongs_to :from, class_name: 'User', inverse_of: nil
  belongs_to :to, class_name: 'User', inverse_of: nil

...
Message.where(from: my_user)