1

我在 Symfony 2.0.5 中使用 Doctrine MongoDB ODM

此代码不起作用:

 $dm = $this->get('doctrine.odm.mongodb.document_manager');
        $dm->createQueryBuilder('AcmeMyBundle:Entry\Entry')
            ->field('comments2')->push('some text')
            ->field('_id')->equals($entry_id) 
            ->getQuery()
            ->execute();

symfony 分析器说实际的查询是:

db.entries.find({ "_id": ObjectId("4ea97d482fd1288017000000") }).sort([ ]);

它有什么问题?

4

1 回答 1

2

您需要指定查询类型是更新。

    $dm = $this->get('doctrine.odm.mongodb.document_manager');
    $dm->createQueryBuilder('AcmeMyBundle:Entry\Entry')
        ->update()
        ->field('comments2')->push('some text')
        ->field('_id')->equals($entry_id) 
        ->getQuery()
        ->execute();
于 2011-11-15T21:36:31.623 回答