我需要一种搜索方式,但不包括已经在用户面前的 _id。例如,我有三个宠物档案,其中一个用户已经在查看。
在该页面上,我有一个名为“我的家庭”的标题。然后我运行此搜索:
它返回了我家所有的宠物,即使我已经展示了其中一个。因此,我想从搜索中排除那个 _id。我考虑过像这样的东西。
在该页面上,我有一个名为“我的家庭”的标题。然后我运行此搜索:
public function fetch_family($owner)
{
$collection = static::db()->mypet;
$cursor = $collection->find(array('owner' => new MongoId($owner)));
if ($cursor->count() > 0)
{
$family = array();
// iterate through the results
while( $cursor->hasNext() ) {
$family[] = ($cursor->getNext());
}
return $family;
}
}
它返回了我家所有的宠物,即使我已经展示了其中一个。因此,我想从搜索中排除那个 _id。我考虑过像这样的东西。
$cursor = $collection->find(array('owner' => new MongoId($owner), '$not'=>array('_id'=>new MongoId(INSERT ID HERE))));
然而,这只是阻止整个程序运行。