如何删除学说 mongodb odm 中的多个文档?在 PHP 类中,我应该能够使用以下代码来做到这一点:
$db->collection->remove(array("age" => 18));
我怎样才能在学说mongo odm中做到这一点?
如何删除学说 mongodb odm 中的多个文档?在 PHP 类中,我应该能够使用以下代码来做到这一点:
$db->collection->remove(array("age" => 18));
我怎样才能在学说mongo odm中做到这一点?
你有两个选择。使用 DocumentManager,您可以请求给定类的集合。这实际上将返回一个Doctrine\MongoDB\Collection
实例,该实例包装了基础MongoCollection
以支持日志记录和事件。如果您真的需要,底层证券MongoCollection
也可用:
$collection = $dm->getDocumentCollection('Documents\User');
$collection->remove(array('age' => 18));
// Use the raw MongoCollection to bypass logging and events
$mongoCollection = $collection->getMongoCollection();
$mongoCollection->remove(array('age' => 18));
或者,您可以使用查询构建器 API:
$qb = $dm->createQueryBuilder('Documents\User');
$qb->remove()
->field('age')->equals(18)
->getQuery()
->execute();
如果你停在getQuery()
,你可以使用debug()
返回的查询对象上的方法来查看 Doctrine 将对数据库执行什么。