Budete si muset vytvořit $set
modifikátor programově:
var modifier = { $set: {} };
modifier.$set['companies.' + companyid] = { desksmemberships:[] };
A pak použijte modifier
jako třetí parametr ve vašem findAndModify
zavolejte.
Můžete také zvážit změnu companies
být polem namísto vloženého objektu.
Aktualizace Node.js 4.x
Nyní k tomu můžete použít vypočítanou syntaxi vlastnosti přímo v objektovém literálu:
collection('users').findAndModify(
{username: usern},
[['_id', 'asc']],
{$set:{['companies.' + companyid]: { desksmemberships:[] }}},
{new: true},
function(){...});