MongoError:E11000重复键错误集合:tracker-db.users索引:username_1 dup键:{username:null}“

时间:2020-09-10 11:00:30

标签: node.js mongoose backend

之前回答过很多类似的问题,但似乎都无法解决我的问题。添加第一个用户没有问题。但是,用户名不显示记录,并且在添加第二个用户时出现错误。

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

const userSchema = new Schema(
    {
        username: {
            type: String,
            unique: true,
            required: true,
            minlength: 3,
        },
        gender: String,
        age: Number
    },
    {
        timestamps: true
    }
);

const User = mongoose.model('user', userSchema);
module.exports = User;

The error that I'm getting

The record on adding first user

4 个答案:

答案 0 :(得分:1)

在 Robo3T 中,我必须查找我的收藏索引,并手动删除用户名索引。

答案 1 :(得分:0)

删除集合并在 mongodb 中重新创建集合对我有用

答案 2 :(得分:0)

在你的架构中添加一个用户名,我遇到了同样的问题,我做到了

function(accessToken, refreshToken, profile, cb) { 控制台日志(配置文件); User.findOrCreate({ username: profile.displayName, googleId: profile.id }, function (err, user) { 返回 cb(err, user); }); 我只是在我的 findorcreate 函数中添加了一个用户名,这样它就不会显示用户名 null

答案 3 :(得分:0)

只需删除集合并再次发出请求。这应该可以正常工作。