Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.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
从mongodb获取信息的问题_Mongodb_Mongoose - Fatal编程技术网

从mongodb获取信息的问题

从mongodb获取信息的问题,mongodb,mongoose,Mongodb,Mongoose,好的,这就是我要做的,我有一个项目集合,它包含一个用户项目以及价格、数量和描述。我还创建了一个名为soldItems的集合,一旦用户输入所需数据并提交表单,该集合将存储有关已售出商品的信息。我不确定我一开始是否做得对,我一直在努力研究,但我不知道我到底在寻找什么 这是我到目前为止的代码 router.post("/item/:id", middleware.isLoggedIn, (req, res) => { Item.findById(req.params.id, (err, it

好的,这就是我要做的,我有一个项目集合,它包含一个用户项目以及价格、数量和描述。我还创建了一个名为soldItems的集合,一旦用户输入所需数据并提交表单,该集合将存储有关已售出商品的信息。我不确定我一开始是否做得对,我一直在努力研究,但我不知道我到底在寻找什么

这是我到目前为止的代码

router.post("/item/:id", middleware.isLoggedIn, (req, res) => {
  Item.findById(req.params.id, (err, item) => {
    if(err) {
      console.log(err);
    }
    var soldItem = {
      id: req.params.id,
      item: req.item.name,
      askPrice: req.item.price
    };
    var soldPrice = req.body.soldPrice;
    var soldQuantity = req.body.soldQuantity;
    var itemSold = {
      soldItem: soldItem,
      soldPrice: soldPrice,
      soldQuantity: soldQuantity
    };
    SoldItem.create(itemSold, (err, newlyCreated) => {
      if (err) {
        console.log(err);
      } else {
        item.soldItems.push(newlyCreated);
        item.save();
        req.flash("success", "Item Sold");
        res.redirect("back");
      }
    });
  });
});

所以。。。findById(req.params.id)之所以有效,是因为我正在从url中提取ObjectId。但是,我如何才能使用req.item.\u id。因为我遇到的问题是当我试图获取req.item.name和req.item.price时,我被告知它无法读取未定义的属性“name”或“price”。我怎样才能得到那个信息

你指的是这里的
item
item.findById(req.params.id,(err,item)?那么这只是
item
,而不是
req.item
。所以
item.name
等等。我认为你完全没有区分“请求对象”和“集合中的对象”您刚刚用标记语句检索到了它。您是对的,我是…所以我让它工作了,现在我得到一个错误,上面写着:TypeError:无法读取未定义的属性“push”…所以现在要解决这个问题。@Darrell您能发布您的SoldItem架构定义吗?