gpt4 book ai didi

javascript - Meteor:Accounts.createUser 抛出异常:meteor.roles.$name_1 dup key

转载 作者:行者123 更新时间:2023-11-28 06:46:59 25 4
gpt4 key购买 nike

尝试在注册时将新用户添加到 users 集合中。

在 Meteor 的客户端,我调用服务器方法将用户添加到 users 集合

Meteor.methods({
createUserServer : function (user) {

// On server-side, Accounts.createUser is essentially
// blocking (Fibers): it waits for the user to be
// created, and then returns its newly generated id.
try {
var userId = Accounts.createUser(user)
console.log('user ID: ' , userId);
return { success:true , message : userId }
} catch (e) {
console.log('Meteor Exception: ',e);
return { success : false , message : e.reason }
}






}
})

仅第一次在 users 集合上添加效果很好,但之后,我收到此异常:

Meteor 异常:{ [MongoError: insertDocument::导致::11000 E11000 重复键错误索引:meteor.roles.$name_1 dup key: { : null }] 堆栈:[Getter] }

我检查了数据库上的roles集合,我只发现了一个文档:

db.roles.find() --> 返回 --> { "_id": "whef5ZW8sBchDWBuH", "userId": "WNM7gYDusa2dJY8wd", "roles": [ ] }

我不确定这是什么类型的问题?

最佳答案

我明白了。

由于某种原因,name 文档被制作为索引并且是唯一的,这导致了上述冲突,通过删除该索引,现在一切正常:

Meteor.roles._ensureIndex('name', {unique: 1})

现在我很高兴:)

引用号:https://github.com/orionjs/orion/issues/239

关于javascript - Meteor:Accounts.createUser 抛出异常:meteor.roles.$name_1 dup key,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33330380/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com