Doctrine MongoDB 在没有 ODM 的情况下使用

Posted

技术标签:

【中文标题】Doctrine MongoDB 在没有 ODM 的情况下使用【英文标题】:Doctrine MongoDB use without ODM 【发布时间】:2013-01-18 17:05:41 【问题描述】:

我在 Symfony2 中使用 Doctrine MongoDB,但现在我想做一些没有 ODM 对我来说更容易的事情,我怎样才能获得 MongoClient 或 MongoCollection 对象?

我想以老式的方式使用 MongoDB,例如: http://php.net/manual/en/mongocollection.find.php

【问题讨论】:

【参考方案1】:

您可以使用从DocumentManager 获取MongoClient

$mongoClient = $dm->getConnection()->getMongo();

同样,您可以使用

获取文档类classNameMongoCollection实例
$mongoCollection = $dm->getDocumentCollection('className')->getMongoCollection();

或者更简单

$mongoCollection = $dm->getConnection()->getMongo()
    ->selectCollection('collectionName');

【讨论】:

以上是关于Doctrine MongoDB 在没有 ODM 的情况下使用的主要内容,如果未能解决你的问题,请参考以下文章

Doctrine ODM:如何选择Mongodb数据库

Doctrine ODM:如何选择Mongodb数据库

Doctrine ODM with MongoDB 需要两个参考映射集

Doctrine 2 ODM MongoDB 从内存中将图像存储在 GridFS 中

通过 mongodb/doctrine2 odm 中的嵌套引用值查询

Doctrine MongoDB ODM 在两个或多个字段中搜索