【发布时间】:2016-06-11 12:27:04
【问题描述】:
我有 2 个收藏:
'用户'集合
_id: ObjectID('56c9a824f4b233dfd30041b3')
name: Luke Skywalker
username: jedimaster23
和
'projectInfo'集合
_id: 56d1d830f4b233ded30041c3
projectName: L
startDate: 24 April 2016
users_id: ObjectID('56c0abb7f4b233ba020041b3')
saved_at: February 27, 2016 5:09 PM
每次用户创建项目时,他们的用户 ID 都会存储在 projectInfo 集合和 users 集合中,因此 projectInfo 集合中有一个名为 user_id 的手动引用。
我只想列出每个用户创建的所有项目。我现在的查询是:
$userTest = $user->_id; // get the userid from the current session
$findResult = $usersCollection->findOne(array('_id'=> new MongoID($userTest)), array('user_id'=>1));//get current user
$result = $collection->find(array('_id' => array('$in' => $findResult['user_id'])));
但是,尽管我知道我登录的用户创建了许多项目,但这不会返回任何记录。
谁能告诉我我做错了什么,这是我第一个使用 MongoDB 的项目,所以还处于学习阶段
【问题讨论】: