【发布时间】:2014-02-21 08:27:45
【问题描述】:
我有一个大问题,也许是微不足道的问题。我正在尝试将 reference 与 mongoose.js 一起用于 MongoDB 数据库。让我们看一下这个例子:
示例代码:
https://gist.github.com/hastebrot/1170907
当我运行这段代码时,我的数据库中有类似的东西:
> db.stories.find()
{
"title" : "A man who cooked Nintendo",
"_creator" : ObjectId("52e7dc001bdedb703df29b8e"),
"_id" : ObjectId("52e7dc001bdedb703df29b8f"),
"fans" : [ ], "__v" : 0
}
> db.people.find()
{
"name" : "Aaron",
"age" : 100,
"_id" : ObjectId("52e7dc001bdedb703df29b8e"),
"stories" : [ ], "__v" : 0
}
问题出在哪里?
如果我使用 mongoose 插入数据并使用 mongoose 读取引用,一切都很好。 但是当 db 被具有自己的 mongoDB 层的 Java 程序获取时,就会出现问题。
这个 Java 程序将类似的内容添加到 db 中(这是另一个示例,不要查看未匹配的字段):
//other fields
"user": {
"$ref": "users",
"$id": {
"$oid": "52c6c497c08e6fcf37000001"
}
}
当我们查看 MongoDB (http://docs.mongodb.org/manual/reference/database-references/#dbrefs) 的文档时,我们可以看到引用属性需要 $ref 和 $id 字段。
问题:
那么是错误的实现 mongoDB DBRef 类型进入 mongoose 还是我做错了什么?
【问题讨论】:
标签: javascript mongodb mongoose