首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何独立处理猫鼬多个单元组的错误?

如何独立处理猫鼬多个单元组的错误?
EN

Stack Overflow用户
提问于 2019-10-10 21:07:37
回答 1查看 115关注 0票数 1

我有一个包含多个统一的模式,如下所示:

代码语言:javascript
代码运行次数:0
运行
复制
var userSchema = new mongoose.Schema({
  user: {
    type: String,
    unique: true
  },
  email: {
    type: String,
    unique: true
  }
});

在尝试保存过程中,我知道可以访问属性err.code (11000)来处理唯一的错误,如下所示:

代码语言:javascript
代码运行次数:0
运行
复制
user.save((err, doc) => {
    if(!err) {
      res.send(doc);
    } else {
      if (err.code == 11000)
        res.status(422).send(['Message here!']);
    }
  });

因此,在本例中,我希望为两个字段设置自定义消息:useremail。有什么办法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-10-10 22:26:37

我通过发送object error并检查其特性找到了实现这一目标的方法,并注意到有一个名为keyPattern的属性。

因此,代码运行良好:

代码语言:javascript
代码运行次数:0
运行
复制
user.save((err, doc) => {
    if(!err) {
      res.send(doc);
    } else {
      if (err.code == 11000)
        if(Object.keys(err.keyPattern)[0] === "user")
          res.status(422).send(['Duplicate user!']);
        else if(Object.keys(err.keyPattern)[0] === "email")
          res.status(422).send(['Duplicate email!']);
    }
  });
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58331113

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档