È necessario utilizzare la "notazione punto" MongoDB per l'elemento incorporato, il che significa che la "chiave" deve essere un tipo di notazione stringa. Applica anche $exists
per abbinare dove è presente la chiave in has e .unset()
metodo da mongoide:
User.where('_id'=> userId, 'ttokens.919839398393'=> { '$exists' => true }).unset(
'ttokens.919839398393'
)
Questo è effettivamente il $unset
operatore di MongoDB, che rimuove le "chiavi" dal documento in base al percorso specificato.
Dal documento di esempio questo corrisponderebbe e rimuoverebbe la prima chiave, lasciando solo l'altra.