Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/381.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
Javascript 为什么MongoDB允许创建相同的用户?_Javascript_Angularjs_Mongodb - Fatal编程技术网

Javascript 为什么MongoDB允许创建相同的用户?

Javascript 为什么MongoDB允许创建相同的用户?,javascript,angularjs,mongodb,Javascript,Angularjs,Mongodb,我正试图通过Angular应用程序注册一个新用户,但当我使用相同的用户名注册一个用户时,Mongo允许我这样做,因此不会出现错误,之后我可以在db中看到两个同名用户。但我确实将名称字段标记为唯一的 api的一部分: apiRoutes.post('/signup', function(req, res) { if (!req.body.userId || !req.body.password) { res.json({success: false, msg: 'Pleas

我正试图通过Angular应用程序注册一个新用户,但当我使用相同的用户名注册一个用户时,Mongo允许我这样做,因此不会出现错误,之后我可以在db中看到两个同名用户。但我确实将名称字段标记为唯一的

api的一部分:

apiRoutes.post('/signup', function(req, res) {
    if (!req.body.userId || !req.body.password) {
        res.json({success: false, msg: 'Please pass name and password.'});
    } else {
        var newUser = new User({
            name: req.body.name,
            password: req.body.password,
            wallet: req.body.wallet,
            userPic: req.body.userPic
        });
        // save the user
        newUser.save(function(err) {
            if (err) {
                return res.json({success: false, msg: 'Username already exists.'});
            }
            res.json({success: true, msg: 'Successful created new user.'});
        });
    }
});
型号代码:

// set up a mongoose model
var UserSchema = new Schema({
    name: {
        type: String,
        unique: true,
        required: true
    },
    password: {
        type: String,
        required: true
    },

    wallet: {
        type: Number,
        required: true
    },

    userPic: {
        type: String,
        required: true,
        unique: true
    }

    });
和POST请求代码(从外部获取登录名和密码):

在您的模型中尝试:

name: {
        type: String,
        index:{unique: true},
        required: true
    }

和:{type:String,unique:true,required:true,dropDups:true}仍然存在相同的问题。出于某种原因,我在这个集合的索引文件夹中只有_idindex。这个对我有帮助。谢谢
name: {
        type: String,
        index:{unique: true},
        required: true
    }