Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在express js中更新(放置)数组_Javascript_Arrays_Node.js_Express - Fatal编程技术网

Javascript 在express js中更新(放置)数组

Javascript 在express js中更新(放置)数组,javascript,arrays,node.js,express,Javascript,Arrays,Node.js,Express,我正在使用expressjs(nodejs)。我试图在更新现有数据时存储数组数据(dealtype&dealprice),但无法执行此操作 我的现有数据集 { "_id": "56a59a2923e047bc2128cd99", "foodImageUrl": "modules/foods/client/img/food.jpg", "deal": [ { "_id": "56a59a2923e047bc2128cd9a", "dealprice": "asd", "

我正在使用expressjs(nodejs)。我试图在更新现有数据时存储数组数据(
dealtype
&
dealprice
),但无法执行此操作

我的现有数据集

{
 "_id": "56a59a2923e047bc2128cd99",
 "foodImageUrl": "modules/foods/client/img/food.jpg",
 "deal": [
  {
   "_id": "56a59a2923e047bc2128cd9a",
   "dealprice": "asd",
   "dealtype": "asd"
  }
 ],
 "name": "ads",
 "created": "2016-01-25T03:44:41.346Z"
}
我的expressjs控制器

exports.update = function (req, res) {
var food = req.food;

  food.name = req.body.name;
  food.deal.dealtype = req.body.deal.dealtype;
  food.deal.dealprice = req.body.deal.dealprice;
  food.foodImageUrl = req.body.foodImageUrl;

  food.save(function (err) {
    if (err) {
      return res.status(400).send({
        message: errorHandler.getErrorMessage(err)
      });
    } else {
      res.json(food);
    }
  });
};

更新现有文档的一种方法。首先,通过
\u id
或其他关键字查找需要更改的文档。下面是一个由
\u id
编写的示例

Food.findOne({_id: req.food._id}, function(err, food) {
  food.name = req.body.name;
  food.deal.dealtype = req.body.deal.dealtype;
  food.deal.dealprice = req.body.deal.dealprice;
  food.foodImageUrl = req.body.foodImageUrl;

  food.save(function (err) {
    if (err) {
      return res.status(400).send({
        message: errorHandler.getErrorMessage(err)
      });
    } else {
      res.json(food);
    }
  });
});

或者只使用更新现有文档。

您的代码中是否使用了
mongoose
?是的,mongoose用于更新现有文档上的dealtype和dealprice?或者创建一个新文档?我想更新现有文档。它显示
错误:[$resource:badcfg]操作的资源配置错误
更新
。预期响应包含一个数组,但在控制台中获得了一个对象。我正在前端使用angularjs
food.deal.dealtype=req.body.deal.dealtype是否提取ng重复数据?