Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.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
Node.js 系统验证失败-节点/Express/Mongoose_Node.js_Mongodb_Forms_Express_Mongoose - Fatal编程技术网

Node.js 系统验证失败-节点/Express/Mongoose

Node.js 系统验证失败-节点/Express/Mongoose,node.js,mongodb,forms,express,mongoose,Node.js,Mongodb,Forms,Express,Mongoose,当我提交表单时,我收到以下错误:错误[ValidationError]:系统验证失败:需要lastName:PathlastName,需要firstName:PathfirstName。 我不确定这是什么原因造成的,当我使用console.log(formData)时,我会将提交的数据保存到表单中 App.js const express = require('express') const app = express(); const mongoose = require('mongoose'

当我提交表单时,我收到以下错误:错误[ValidationError]:系统验证失败:需要lastName:Path
lastName
,需要firstName:Path
firstName

我不确定这是什么原因造成的,当我使用console.log(formData)时,我会将提交的数据保存到表单中

App.js

const express = require('express')
const app = express();
const mongoose = require('mongoose');
const dotenv = require ('dotenv/config');

const System = require('./models/System');

app.use(express.urlencoded({ extended: true }));
app.use(express.json());

app.get('/', (req,res) => {
  res.render('index.ejs');
});


app.post('/post-feedback', (req, res) => {
  const formData = {
    firstame: req.body.firstName,
    lastname: req.body.lastName,
    assetTag: req.body.assetTag
  }

  const system = new System(formData);

  system.save()
    .then(result => {
      console.log(result);
    })
    .catch(err => {
      console.log(err);
    });
});
型号:

const mongoose = require('mongoose');

var SystemSchema = new mongoose.Schema({
    firstName: {
        type: String,
        required: true
    },
    lastName: {
        type: String,
        required: true
    },
    assetTag: {
        type: Number,
        required: true
    }
});

module.exports = mongoose.model('System', SystemSchema);
表格:


名字:
姓氏:
资产标签:
提交
你出错的唯一原因是因为你在表单数据上打错了。它必须是
firstName
lastName
,确保它与您的架构字段相同,然后确保
assetTag
是一个数字,因为您的架构类型是数字

您可以尝试使用以下代码:

app.post('/post反馈',(请求、回复)=>{
常量formData={
//你在这里输入错误:firstame
firstName:req.body.firstName,
//你在这里输入错了:姓
lastName:req.body.lastName,
//必须是数字
assetTag:parseInt(请求主体assetTag);
}
常量系统=新系统(formData);
system.save()
。然后(结果=>{
控制台日志(结果);
})
.catch(错误=>{
控制台日志(err);
});
});
我希望它能帮助你

app.post('/post-feedback', (req, res) => {

   const system = new System(req.body);

  system.save()
    .then(result => {
      console.log(result);
    })
    .catch(err => {
      console.log(err);
    });
});
你出错的唯一原因是因为你在表单数据上打错了。它必须是
firstName
lastName
,确保它与您的架构字段相同,然后确保
assetTag
是一个数字,因为您的架构类型是数字

您可以尝试使用以下代码:

app.post('/post反馈',(请求、回复)=>{
常量formData={
//你在这里输入错误:firstame
firstName:req.body.firstName,
//你在这里输入错了:姓
lastName:req.body.lastName,
//必须是数字
assetTag:parseInt(请求主体assetTag);
}
常量系统=新系统(formData);
system.save()
。然后(结果=>{
控制台日志(结果);
})
.catch(错误=>{
控制台日志(err);
});
});
我希望它能帮助你

app.post('/post-feedback', (req, res) => {

   const system = new System(req.body);

  system.save()
    .then(result => {
      console.log(result);
    })
    .catch(err => {
      console.log(err);
    });
});
我认为上面的代码应该是可行的


我认为上面的代码应该是有效的。

有两件事需要更新,第一件是formdata对象键,因为它们应该匹配架构,第二件assetTag也应该是字符串。有两件事需要更新,第一件是formdata对象键,因为它们应该匹配架构,第二件assetTag也应该是字符串。