私は次のマングーススキーマを持っています:
user = {
"userId" : "myId",
"connections":
[{
"dateConnectedUnix": 1334567891,
"isActive": true
}, {
"dateConnectedUnix": 1334567893,
"isActive": false
}]
}
connections
以下を取得するために、配列の 2 番目の項目を削除したいと思います。
user = {
"userId" : "myId",
"connections":
[{
"dateConnectedUnix": 1334567893,
"isActive": false
}]
}
次のコードは、期待どおりに機能します。
userAccounts.update(
{ 'connections.isActive': false },
{ $pull: { 'connections.isActive':false }},
function (err, val) {
console.log(val)
}
);
しかし、ObjectId に基づいて削除する必要があります。そして、以下はうまくいきません:
userAccounts.update(
{ 'connections._id': '1234-someId-6789' },
{ $pull: { 'connections._id': '1234-someId-6789' } },
function (err, val) {
console.log(val)
}
);
助言がありますか?私は何時間も画面 (別名 Google、Stackoverflow など) に頭をぶつけていましたが、運がありませんでした。