"c": "d" --> Players:[ --> 0 -6ren">
gpt4 book ai didi

node.js - findOneAndUpdate - 更新数组中具有特定属性的第一个对象

转载 作者:可可西里 更新时间:2023-11-01 10:03:54 25 4
gpt4 key购买 nike

我有一个具有属性的对象。这包括一组具有自己属性的其他对象。

Lobby:
--> "a": "b"
--> "c": "d"
--> Players:[
--> 0
--> "x": "23"
--> "status": "ready"
--> 1
--> "x": "54"
--> "status": "open"
--> 2
--> "x": "16"
--> "status": "open"

我如何将第一个具有 "status": "open"(在本例中为 1)的玩家对象更新为新对象?

例如:

player = {
x: "125",
status: 'joined'
};

最佳答案

我设法找到了可行的解决方案!

Game.findOneAndUpdate({'a': 'b', 'Players.status': 'open'}, { $set : { 'Players.$': player} },
function (err, doc) {
if (err) {
console.log(err);
} else {
// Do stuff
}
});

关于node.js - findOneAndUpdate - 更新数组中具有特定属性的第一个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28775885/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com