如何解决带有“外键”的Mongoid
| 作为mongodb的资深人士,我创建了以下结构:User: {
name: str,email: ...
}
Gift: {
# author and receiver refer to User objects obviously
author: object_id(...),receiver: object_id(...),name: str
...
}
我想用蒙古语正确地映射它:
class User
include Mongoid::Document
has_many :gifts
end
class Gift
include Mongoid::Document
belongs_to :user
end
但是,映射不正确。 g = Gift.first; g.author未定义。我该如何参考?
从技术上讲,它是:
User <--- 1: N via author---> Gift <--- N:1 via receiver---> User
(这意味着用户可以是许多礼物的作者,而用户可以是许多礼物的接收者,但礼物只能有1个作者和接收者)。
请帮助!!!
解决方法
如果Gift看起来像这样,您可能会更好地使用Rails:
Gift: {
# author and receiver refer to User objects obviously
author_id: object_id(...),receiver_id: object_id(...),name: str
...
}
然后,在礼物中添加:foreign_key
:
class Gift
include Mongoid::Document
belongs_to :user,:foreign_key => \'author_id\'
end
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。