Meteor 在应用程序启动时向新用户添加accountStatus

Meteor 在应用程序启动时向新用户添加accountStatus,meteor,Meteor,我试图将accountStatus添加到我第一次运行应用程序时创建的用户中,但应用程序不断崩溃帐户状态不是用户配置文件的一部分 有人能看看我的代码,告诉我我做错了什么吗 谢谢你的帮助 路径:server.js // run at Meteor app startup Meteor.startup(function(options, user) { // if users database is empty, seed these values if(Meteor.users.find(

我试图将
accountStatus
添加到我第一次运行应用程序时创建的用户中,但应用程序不断崩溃<代码>帐户状态不是
用户配置文件
的一部分

有人能看看我的代码,告诉我我做错了什么吗

谢谢你的帮助

路径:
server.js

// run at Meteor app startup
Meteor.startup(function(options, user) {

  // if users database is empty, seed these values
  if(Meteor.users.find().count() < 1) {

    // users array
    var users = [
      {firstName: 'Sam', lastName: 'Smith', email: 'sam@gmail.com', roles: ['is_student']},   
    ];
    // user creation
    _.each(users, function(userData) {
      // return id for use in roles assignment below
      var userId = Accounts.createUser({
        email: userData.email,
        password: 'password',
        profile: {
          firstName: userData.firstName,
          lastName: userData.lastName,
        }
      });
      // verify user email
      Meteor.users.update({ _id: userId }, { $set: { 'emails.0.verified': true } });
      // add roles to user
      Roles.addUsersToRoles(userId, userData.roles);

      // add accountStatus and set to true
      _.extend(userId, { accountStatus: true });

    });
    console.log('New users created!');
  }
});
//在Meteor应用程序启动时运行
Meteor.startup(功能(选项、用户){
//如果用户数据库为空,请为这些值设置种子
if(Meteor.users.find().count()<1){
//用户阵列
变量用户=[
{姓:“山姆”,姓:“史密斯”,电子邮件:'sam@gmail.com,角色:['is_student']},
];
//用户创建
_.each(用户、函数(用户数据){
//返回用于以下角色分配的id
var userId=Accounts.createUser({
电子邮件:userData.email,
密码:“password”,
简介:{
firstName:userData.firstName,
lastName:userData.lastName,
}
});
//验证用户电子邮件
update({u id:userId},{$set:{'emails.0.verified':true});
//向用户添加角色
Roles.addUsersToRoles(userId、userData.Roles);
//添加accountStatus并设置为true
_.extend(userId,{accountStatus:true});
});
log('newusers created!');
}
});
看这一行:

_.extend(userId, { accountStatus: true });
看看定义:

将源对象中的所有属性复制到目标对象,然后返回目标对象。它是有序的,因此最后一个源将覆盖前面参数中同名的属性


这一行应该做什么?

我希望这一行能将accountStatus=true添加到用户帐户中。所以,做一个更新-就像你做了五行更高的更新:
Meteor.users.update({u id:userId},{$set:{accountStatus:true})我上次尝试时一定是打错了,因为你的解决方案有效。谢谢@Radoslaw