我在MongoDB Items集合中引用了Users集合对象。 Random Item文档如下所示:
ps:澄清一下,我真的不想将Items嵌入到Users集合中。
Array
(
[_id] => MongoId Object
(
[$id] => 4d3c589378be56a008000000
)
[modified] => 1295800467
[order] => 1
[title] => MyFirstItem
[user] => Array
(
[$ref] => users
[$id] => MongoId Object
(
[$id] => 4d3c55e7a130717c09000012
)
)
)
所以我只需要找到分配给特定用户的项目。找到我的问题的这个问题,但解决方案对我没有用。
MongoDB-PHP: JOIN-like query
这是我的代码片段,给我一点根本没有结果。
$user = $db->users->findOne(array("_id" => new MongoID("4d3c55e7a130717c09000012")));
$items = $db->items->find(array("user" => array('$id' => $user["_id"])));
找到这些数据的正确方法是什么?我是否应该将user_id作为MongoID而不引用?
提前全部用这一天,谢谢!
答案 0 :(得分:1)
尝试
$items = $db->items->find(array("user.$id" => $user["_id"]));