MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Remover subcampos do documento mongoDb


Obrigado a todos que me ajudaram nesta questão. encontrei problema. Quando escrevi a pergunta, usei a versão simples da consulta de atualização. Esta é a versão completa
    c($this->table)->update(
        array(
            '_id'  => new MongoId($uid),
            "on.{$strHid}" => array('$exists' => true),
        ),
        array(
            'mts' => time()
            '$unset'    => array(
                "on.{$strHid}" => 1
            )
        )
    ); 

Meu problema estava nesta parte do código. Aqui eu uso modificadores e não modificadores.
        array(
            'mts' => time()
            '$unset'    => array(
                "on.{$strHid}" => 1
            )
        )

reescrevi assim e tudo ok
        array(
            '$set'      => array(
                'mts' => time()
            ),
            '$unset'    => array(
                "on.{$strHid}" => 1
            )
        )