在Meteor.roles中插入错误

时间:2017-06-21 11:01:46

标签: meteor meteor-blaze meteor-accounts

我在我的网页上使用meteor roles包进行身份验证。我定义了两个角色,一个是student角色,另一个是administrator角色。对于在我的网页上注册的所有新用户,我使用以下帮助者为他们分配了students角色:

Accounts.createUser({
  email:email,
  password:password,
profile:{                         //profile includes fullname and surname
    fullname:fullname,
    surname:surname
}
},
function(err){
  if(err){
  FlashMessages.sendError("There was an error");
 } else {
  FlashMessages.sendSuccess("Account Created");
  Roles.addUsersToRoles( Meteor.userId(), 'Students' );
  Router.go("/dashboard");
      }
  });

尝试添加新用户后,用户确实会添加到meteor用户集合中,并且角色会被分配为意图。但控制台确实返回以下错误:

insert failed: WriteError({"code":11000,"index":0,"errmsg":"E11000 duplicate key error index: meteor.roles.$name_1 dup key: { : \"Students\" }","op":{"name":"Students","_id":"w3vnwKrKJTNE8TpBS"}})

由于用户获得分配的角色并且正在插入流星集合中,因此我无法理解错误,因此无法解决此问题。

0 个答案:

没有答案