MongoDB获取具有相同外键的所有文档

时间:2014-05-20 16:37:16

标签: php mongodb

我有以下几组数据:假设这是一个'类别'集合,每个类别都有一个父类'类别'并且属于“'部分'这是另一个集合:

 {
     "_id": ObjectId("5379e61b086d83de218b4568"),
     "name": {
         "en": "Inactive accounts"
     },
     "parent": ObjectId("5379e61b086d83de218b4568"),
     "section": "ObjectId("5379d4f9086d835328a22fc8")
 }
 {
     "_id": ObjectId("5379e61b086d83de218b4568"),
     "name": {
         "en": "second category"
     },
     "parent": 0,
     "section": "ObjectId("5379d4f9086d835328a22fc8")
 }

等......

我试图让所有类别都在同一部分:这是我的PHP代码:

$categories = $db->categories->find(array('section' => new MongoId($section)));

在这种情况下,它返回{}一个空结果,而如果使用findOne则返回一个文档。

$categories = $db->categories->findOne(array('section' => new MongoId($section)));

我不确定是否遗漏了某些内容,我可能会将外键更改为字符串而不是ObjectId('')s。

1 个答案:

答案 0 :(得分:0)

我解决了,我正在错误地处理响应。上面的代码正在运行,但是找到了'函数返回'光标'而findOne返回数组。