javascript - Mongoose - 检测重复字段

标签 javascript node.js mongodb mongoose

我有包含 2 个唯一字段(电子邮件和用户名)的用户架构,当我尝试使用重复字段创建新用户时,出现该错误

{
  "error": {
    "code": 11000,
    "index": 0,
    "errmsg": "E11000 duplicate key error collection: InstaClone.users index: email_1 dup key: { : \"<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="f496959d9095869d9bda8195b49399959d98da979b99" rel="noreferrer noopener nofollow">[email protected]</a>\" }",
    "op": {
      "hashedPassword": "$2a$10$eaMym5AMibJlGOSBV3/DHOXPhSoMMDTNwxGcSOn4tEPg07htyQ2Ey",
      "email": "<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="e684878f8287948f89c89387a6818b878f8ac885898b" rel="noreferrer noopener nofollow">[email protected]</a>",
      "username": "baidario",
      "fullName": "Roman Baida",
      "_id": "58d3a8acdc57641e30e9027a",
      "created": "2017-03-23T10:50:49.188Z",
      "__v": 0
    }
  }
}

如何获得重复的归档名称?我看到的唯一方法是解析 errmsg 字段。也许有人知道更好的方法?

最佳答案

要自定义从 mongoose 唯一验证返回的错误,您可以使用名为:mongoose-beautiful-unique-validation

的包

https://www.npmjs.com/package/mongoose-beautiful-unique-validation

关于javascript - Mongoose - 检测重复字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42974375/

相关文章:

java - 使用 spring-data-mongodb 将数组作为过滤器函数中的参数传递

IE8 中的 JavaScript 日期未定义/NaN

javascript - 当可拖动元素附加到列表后缀并且元素正在生成动态内联样式标签时,如何使可拖动元素可恢复

javascript - Jquery Ajax 上传大文件出错

node.js - meteor 应用程序中的异步回调

mongodb - 当我尝试在 Windows server 2008 中安装 64 位 mongodb 时得到 "Access is denied"

javascript - 如何将整个 div 元素向上移动 x 像素?

node.js 表示请求 ID

mysql - 使用 Node + Express + Sequelize +(Mysql 或 Postgres)构建 SaaS 产品

mysql - Mongify - MonogoDB _id 字段值覆盖 MySQL id 主键字段值