Mongodb post创建文档但未发送数据

Mongodb post创建文档但未发送数据,mongodb,express,mongoose,Mongodb,Express,Mongoose,使用mongoose和express将表单数据发送到mongodb-文档是使用id创建的,但表单数据不会被发送 模式 const reportSchema = mongoose.Schema({ project: [ { studio: String, code: String, name: String } ], }, { collection: 'repor

使用mongoose和express将表单数据发送到mongodb-文档是使用id创建的,但表单数据不会被发送

模式

const reportSchema = mongoose.Schema({
      project: [
        {
        studio: String,
        code: String,
        name: String
        }
      ],
      },
    {
      collection: 'reports'
    }
);

module.exports = mongoose.model('Report', reportSchema);
路线呢

app.post("/", (req, res) => {
  const report = new Report({
    project: {
      studio: req.body.studio,
      code: req.body.code,
      name: req.body.name
    }
  });
  report.save(err => {
    if (err) return res.status(404).send({ message: err.message });

    return res.send({ report });
  });
在postman中发送post请求将创建一个带有空数组的文档

这个帖子看起来像

{
    "project": {
        "studio": "main",
        "code": "411",
        "name": "some project"
    }
}
谢谢你的帮助

更新路由到

app.post("/", (req, res) => {
  const report = new Report({
    project: {
      studio: req.body.project.studio,
      code: req.body.project.code,
      name: req.body.project.name
    }
  });
返回未定义的错误


您在
req.body
中发送了一个带有
project
字段的对象,因此需要通过以下方式获取:

const report = new Report({
  project: {
    studio: req.body.project.studio,
    code: req.body.project.code,
    name: req.body.project.name
  }
});
如果它仍然不起作用,那么您请求的
内容类型可能不是
application/json
。尝试将其添加到请求标头


注意:确保你的应用程序中有body parser。

你能显示你在postman中发送的内容吗?请检查我的答案。更新为include project@CuongLeNgoc返回一个“未定义的错误”你能显示postman请求的完整屏幕截图吗?标题设置为content-type application/json-仍然得到未定义的错误