Anda harus membangun $set
. Anda pengubah secara terprogram:
var modifier = { $set: {} };
modifier.$set['companies.' + companyid] = { desksmemberships:[] };
Dan kemudian gunakan modifier
sebagai parameter ketiga di findAndModify
. Anda panggilan.
Anda mungkin juga ingin mempertimbangkan untuk mengubah companies
menjadi array, bukan objek yang disematkan.
Pembaruan Node.js 4.x
Anda sekarang dapat menggunakan sintaks properti yang dihitung untuk melakukan ini secara langsung di objek literal:
collection('users').findAndModify(
{username: usern},
[['_id', 'asc']],
{$set:{['companies.' + companyid]: { desksmemberships:[] }}},
{new: true},
function(){...});