In MongoDB come si usa $set
per aggiornare un valore nidificato?
Ad esempio, si consideri una collezione persone con il seguente documento:
{
_id: ObjectId("5a7e395e20a31e44e0e7e284"),
name: "foo",
address: { street: "123", town: "bar" }
}
Come posso aggiornare il campo street
incorporato nel documento address
"123"
-"Main Street"
?
Funziona anche se l'indirizzo non esiste? So che $ set creerà street se non esiste all'indirizzo ma qual è il comportamento se le proprietà ancestrali non esistono? Inoltre, il tuo link richiede un login. – Tom
@ Tom, grazie per i commenti sul collegamento, l'ho risolto. Per rispondere alla tua domanda: creerà le proprietà ancestrali richieste per te se non esistono. –
@ Tom Sì, lo farà. Creerà l'intero oggetto fino al campo che stai impostando. (Risposta tardiva, ma spero che questo sia utile per gli altri che inciampano su questa domanda) – Nepoxx