у меня есть документ:
{
activation: {
isActive: true,
stopActiveDate: 1669036712884,
activeLevel: 0,
setActiveMessage: false,
preview: 'double'
},
gameInfo: {
resultData: { hash: '', number: 0, secret: '' },
bets: [ [Object] ],
amount: 1,
timer: 60
},
_id: new ObjectId("637b7ab2427e29ad0612f2bf"),
id: 2000000001,
name: 'Беседа VUL Coin',
__v: 7,
gamemode: 'double',
procent: 0.01,
ownerId: 655037535
}
в gameInfo.bets хранится массив с обьектами, внутри одно из обьектов нужно обновлять один из элементов
пример обьекта:
{
id: 655037535,
peerId: 2000000001,
name: "Tester",
x2: 0,
x3: 0,
x5: 0,
x50: 0
}
пробовал обновлять таким способом:
ctx.conv.updateOne({ 'gameInfo.bets.id': ctx.senderId }, { '$set': {
'gameInfo.bets.$.x2': 10000
}}, function(err) {
console.log(`ебулда не работает - ${err}`)
});
дает ошибку:
MongoServerError: Cannot create field 'id' in element {bets: [ { id: 655037535, peerId: 2000000001, name: "негр", x2: 0, x3: 0, x5: 0, x50: 0 } ]}