为了账号安全,请及时绑定邮箱和手机立即绑定

{ MongoError: E11000 duplicate key error collection: movieApp.users index: user_1 dup key: { : null }

schema 与model创建完成后,在app.js中进行post数据的接收

app.post('/user/signup', function(req, res){

  var _user = req.body.user;  // 在这步的时候可以拿到user和password的数据

   var user = new User(_user);

   user.save(function(err, user){

    if (err){

      console.log(err);  // E11000的错误

    }

    console.log(user); // undefined

   });

});

// 每次输入都提示这个错误,用户名没有重复时候也是提示这个错误

正在回答

1 回答

错误的原因是有多个主键的存在。

我最终的解决方法如下

1.windows下,打开cmd,切换到项目的根目录

2.在跟目录下打开mongo控制台

3.用 mongo  --port=”端口号“  命令,连接到你的数据库

4. use “你的数据库名” ,切换到你的项目的数据库下

5. 输入命令 db.users.getIndexes()  输出结果是包含多个对象的数组

6. 输入命令 db.users.dropIndex({"username":1})

7. 继续输入命令 db.users.dropIndex({你项目的key:value})  只保留一个 _id作为主键

8.已经ok了。你也可以在输入 db.users.getIndexes() 查看是否只有一个_id


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
node建站攻略(二期)——网站升级
  • 参与学习       51940    人
  • 解答问题       408    个

帮助你深入前后端开发留下的迷惑,为进一步自学打下基础

进入课程

{ MongoError: E11000 duplicate key error collection: movieApp.users index: user_1 dup key: { : null }

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信