我正在向api发送一个请求,以更新存储在mongodb中的产品对象的字段。我不知道用户将要预先更新哪些字段,因此在发布请求中,我使用的是2d数组,其中包含字段名称和新值。尽管进行了几次尝试,但我无法在我的findByIdAndUpdate请求中正确实现数组中的数据。 我发送到api的put请求看起来像这样:
terminate_meh
更新方法是:
{"_id": "5eceasd", "Fields":[ ["Title", "Test title"], ["Location", "Adress 1"], ["Price", "222"] ]}
在使用已知值和字段进行操作时,我只会使用:
exports.updateProduct = (req, res) => {
const { _id , Fields} = req.body;
var ark = Fields[1][1];
Product.findByIdAndUpdate({ _id }, {Fields}, (err, product) => {
if (err || !product) {
return res.status(400).json({
error: "Error updating the product",
});
}
return res.json({ product, message: "Product updated" });
});
};
但是我不知道如何将2d数组中的值正确输入到参数中。