我正在尝试存储消息,我想在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.username
或message.from['username']
,并且能够验证from和to字段的存在。
非常感谢任何帮助。
答案 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)