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捕获mongodb错误?_Node.js_Mongodb_Mongoose - Fatal编程技术网

Node.js 如何从mongoose捕获mongodb错误?

Node.js 如何从mongoose捕获mongodb错误?,node.js,mongodb,mongoose,Node.js,Mongodb,Mongoose,当mongoose中存在违反{unique:true}模式定义的情况时,MongoDB而不是mongoose会出现E11000错误 当我使用schema.save(err)时,mongoose不会捕获此错误 你知道如何从node.js获取它吗 以下是代码摘录: var Plan = new Schema({ slug: {type : String, default : '', trim : true, unique: true, required: true}, title: {typ

当mongoose中存在违反{unique:true}模式定义的情况时,MongoDB而不是mongoose会出现E11000错误

当我使用schema.save(err)时,mongoose不会捕获此错误

你知道如何从node.js获取它吗

以下是代码摘录:

var Plan = new Schema({
  slug: {type : String, default : '', trim : true, unique: true, required: true},
  title: {type : String, default : '', trim : true},
  body: {type : String, default : '', trim : true},
  createdAt  : {type : Date, default : Date.now}
})

.... 


// create new test records
   var planArray = [
      {slug: 'test', title: 'A', body: 'Lorem ipsum'},
      {slug: 'test', title: 'B', body: 'Lorem ipsum'},
      {slug: 'another_test', title: 'C', body: 'Lorem ipsum'}
    ]

   var arrayLength = planArray.length;
    for (var i = 0; i < arrayLength; i++) {
      var p = new Plan(planArray[i])
      p.save(function(err, saved){
        if (err)
          {console.log("error creating fixture " + err)}
      })
    }
var计划=新模式({
slug:{type:String,默认值:“”,trim:true,unique:true,required:true},
标题:{type:String,默认值:“”,trim:true},
正文:{type:String,默认值:“”,trim:true},
createdAt:{type:Date,默认值:Date.now}
})
.... 
//创建新的测试记录
变量平面阵列=[
{slug:'test',title:'A',body:'Lorem ipsum'},
{slug:'test',title:'B',body:'Lorem ipsum'},
{slug:'另一个测试',标题:'C',正文:'Lorem ipsum'}
]
var arrayLength=平面阵列.length;
对于(变量i=0;i
任何代码都是有用的……请参阅代码摘录。代码看起来很正确。带有重复的
slug
的文档是否仍添加到集合中?是的,但在mongod控制台上,我收到E11000错误,但无法通过mongoose捕获。这些错误也会传递到您的
save
回调。