gpt4 book ai didi

arrays - 数组元素名称数量与数组对象的增量值

转载 作者:可可西里 更新时间:2023-11-01 10:42:21 26 4
gpt4 key购买 nike

我有一个包含多个对象的数组,我想用 _id 在我的订单中减少 qty 的值。这是我的努力:

funcs.updateOrder=function(request, reply){
Order.update({
"order._id" : request.payload.orderid
}, {
"$set" : {
"$inc":{"order.$.qty" : {qty:request.payload.qty}},
"order.$.reason" : request.payload.reason,

}
},
function(err) {
if(err){
reply(err).code(500);
}
else{
reply({"message":"success"});
}

});


};

这是我的 mongodb 架构:-

{
"_id": "57206feb05a533ac0f84447e",
"createdAt": "2016-04-27T07:53:15.108Z",
"updatedAt": "2016-04-27T07:53:15.108Z",
"orderno": "ORDER-NO-04-2016-2",
"order": [
{
"qty": -1,
"model": "56dd2a2adcb3dde8067906dc",
"vendorname": "57079f50182dd95c16c2d790",
"partname": "57206ddd566d86580ec2d480",
"make": "56dd2a29dcb3dde80679062e",
"_id": "57206feb05a533ac0f844482",
"reason": "unable to delivered"
},
{
"qty": 12,
"model": "56dd2a2adcb3dde8067906dc",
"vendorname": "57079f50182dd95c16c2d790",
"partname": "57206ddd566d86580ec2d480",
"make": "56dd2a29dcb3dde80679062e",
"_id": "57206feb05a533ac0f844481",
"reason": "unable to delivered"
},
{
"qty": 66,
"model": "56dd2a2adcb3dde8067906f1",
"vendorname": "5710be56dc475f640e83a0ba",
"partname": "57206ddd566d86580ec2d480",
"make": "56dd2a29dcb3dde80679062e",
"_id": "57206feb05a533ac0f844480",
"reason": null
},
{
"qty": 55,
"model": "56dd2a2adcb3dde806790704",
"vendorname": "57079f50182dd95c16c2d790",
"partname": "57206ddd566d86580ec2d480",
"make": "56dd2a29dcb3dde80679062e",
"_id": "57206feb05a533ac0f84447f",
"reason": null
}
],
"__v": 0
}

最佳答案

$inc 算子是一个独立的field update operator并且不用作 $set 的嵌入式运算符 喜欢你所做的。您需要将两者分开:

funcs.updateOrder = function(request, reply){
Order.update(
{ "order._id" : request.payload.orderid },
{
"$set": { "order.$.reason": request.payload.reason },
"$inc": { "order.$.qty": request.payload.qty }
}, function(err) {
if (err){
reply(err).code(500);
}else{
reply({"message": "success"});
}
});
});

关于arrays - 数组元素名称数量与数组对象的增量值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36884889/

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