推入Doctrine MongoDB ODM

时间:2011-11-15 07:19:36

标签: symfony doctrine-odm

我正在使用Doctrine MongoDB ODM和Symfony 2.0.5

此代码无效:

 $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 profiler说实际查询是:

  

db.entries.find({“_ id”:ObjectId(“4ea97d482fd1288017000000”)   })。sort([]);

它出了什么问题?

1 个答案:

答案 0 :(得分: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();