Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.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 保存Mongoose模式时如何检测字段名键入错误?_Node.js_Mongodb_Mongoose - Fatal编程技术网

Node.js 保存Mongoose模式时如何检测字段名键入错误?

Node.js 保存Mongoose模式时如何检测字段名键入错误?,node.js,mongodb,mongoose,Node.js,Mongodb,Mongoose,我在Mongoose模式中输入了一个错误,POST请求中的字段与数据库中的字段不匹配。所以Mongoose没有在文档中保存该字段 表单包含此字段(以帕格表示): 猫鼬模式在该字段中缺少s: 'use strict'; const mongoose = require('mongoose'); const Schema = mongoose.Schema; // Use native promises. mongoose.Promise = global.Promise; // Define

我在Mongoose模式中输入了一个错误,POST请求中的字段与数据库中的字段不匹配。所以Mongoose没有在文档中保存该字段

表单包含此字段(以帕格表示):

猫鼬模式在该字段中缺少
s

'use strict';

const mongoose = require('mongoose');
const Schema = mongoose.Schema;

// Use native promises.
mongoose.Promise = global.Promise;

// Define the schema.
const QuestionnaireSchema = new Schema({

  happines: Boolean,
  // ...
}
因此,
req.body
中的
happiness
字段在没有警告的情况下被丢弃


如何确保
req.body
对象中的每个字段都出现在Mongoose模式中?

您可以使用
strict
选项<代码>严格选项默认启用,这将删除架构中不存在的字段,但您可以将其值设置为
抛出
,这将导致产生错误

const QuestionnaireSchema=新模式({},{strict:'throw'})

您可以使用
strict
选项<代码>严格选项默认启用,这将删除架构中不存在的字段,但您可以将其值设置为
抛出
,这将导致产生错误

const QuestionnaireSchema=新模式({},{strict:'throw'})

为mongoose模式中的所有字段设置
required
true
?为复选框输入设置
required
将要求用户标记复选框,但这是一个可选字段。为mongoose架构中的所有字段设置
required
true
?为复选框输入设置
required
将要求用户标记复选框,但这是一个可选字段。
'use strict';

const mongoose = require('mongoose');
const Schema = mongoose.Schema;

// Use native promises.
mongoose.Promise = global.Promise;

// Define the schema.
const QuestionnaireSchema = new Schema({

  happines: Boolean,
  // ...
}