2
我想查詢使用點符號嵌入文檔的原始MongoDB的查詢 - 這裏是一些例子:如何創建使用Doctrine2和Symfony2的
http://www.mongodb.org/display/DOCS/Dot+Notation+(Reaching+into+Objects)
由於我掛了DQL/QueryBuilder API我只想通過Doctrine傳遞原始查詢。我似乎無法在Symfony2的構造中解決這個問題。唯一的代碼,我可以肯定的是:
$dm = $this->get('doctrine.odm.mongodb.document_manager');
$dm->getSchemaManager()->ensureIndexes();
$repo = $dm->getRepository('MyBundle:MyDocument');
$qb = $repo->createQueryBuilder();
// insert magic here
$query = $qb->getQuery();
$result = $query->execute();
這裏的點符號是如何工作的:
$dm = $this->get('doctrine.odm.mongodb.document_manager');
$dm->getSchemaManager()->ensureIndexes();
$repo = $dm->getRepository('MyBundle:MyDocument');
$qb = $repo->createQueryBuilder();
$qb
->field('embedded_document_field.field1')->equals(1)
->field('embedded_document_field.field2')->equals('foo')
;
$query = $qb->getQuery();
$result = $query->execute();