Du måste använda MongoDB 'dot notation' för det inbäddade elementet, vilket betyder att "nyckeln" måste vara en strängtyp av notation. Använd även $exists
för att matcha var nyckeln i hasen finns och .unset()
metod från mongoid:
User.where('_id'=> userId, 'ttokens.919839398393'=> { '$exists' => true }).unset(
'ttokens.919839398393'
)
Detta är faktiskt $unset
operatör för MongoDB, som tar bort "nycklar" från dokumentet med den angivna sökvägen.
Från exempeldokumentet skulle detta matcha och ta bort den första nyckeln och bara lämna kvar den andra.