如何在YiiMongoDbSuite中找到最后插入的记录 我试过以下
$criteria = array('condition'=>array('userid'=>array('==' => $user_id)),
'sort'=>array('lastUpdateDate'=>-1),
'limit'=>1,
'skip'=>0
);
$select = array('url','title','userid');
$arr = $this->find($criteria,$select);
但它只显示了第一张唱片
答案 0 :(得分:0)
http://www.yiiframework.com/extension/yiimongodbsuite/#c13036中的方法解决了这个问题。
用它中提到的方法替换find()
方法。
基于上面的url的建议,我创建了一个函数
function MongoFind($criteria,$model){
$cursor = $model::model()->getCollection()->find($criteria->getConditions());
if($criteria->getSort() !== null)
$cursor->sort($criteria->getSort());
if($criteria->getOffset() !== null)
$cursor->skip($criteria->getOffset());
if($criteria->getSelect())
$cursor->fields($criteria->getSelect(true));
$cursor->limit(1);
return $model::model()->populateRecord($cursor->getNext());
}
并使用
`$arr= Utils::MongoFind($criteria,$this);`
而不是
`$arr = $this->find($criteria,$select);`