在具有特定ID的灯具中创建流星用户?

时间:2014-09-05 05:29:03

标签: meteor

我需要创建一个fixtures文件,重置后我的Meteor.user需要有一个非常具体的ID,因为我需要保留它与使用用户ID的其他数据的关系。

夹具:

if ( Meteor.users.find().count() === 0 ) {
    Accounts.createUser({
        _id: "LHrhapueRmyJkajZ2", // This does not work, but I need it to be this.
        username: 'admin',
        email: 'admin@none.com',
        password: '123456',
        profile: {
            first_name: 'John',
            last_name: 'Doe',
            company: 'ABC',
        }
    });
};

更新:

我想出了另一种方式:

if ( Meteor.users.find().count() === 0 ) {
    var userId = Accounts.createUser({
        username: 'admin',
        email: 'none@none.com',
        password: '123456',
        profile: {
            first_name: 'John',
            last_name: 'Doe',
            company: 'ABC',
        }
    });
};

然后在我的fixtures文件的其余部分中,我可以使用userId变量来分配任何"关系"我想要。

2 个答案:

答案 0 :(得分:2)

你可以拥有一个全局变量,当分配一个没有变量的var时,这是全局变量。

if ( Meteor.users.find().count() === 0 ) {
    userId = Accounts.createUser({
        username: 'admin',
        email: 'none@none.com',
        password: '123456',
        profile: {
            first_name: 'John',
            last_name: 'Doe',
            company: 'ABC',
        }
    });
};

另一方面,您可以拥有一个Session.set('user',value);

if ( Meteor.users.find().count() === 0 ) {
    userId = Accounts.createUser({
        username: 'admin',
        email: 'none@none.com',
        password: '123456',
        profile: {
            first_name: 'John',
            last_name: 'Doe',
            company: 'ABC',
        }
    });
   Session.set('user',userId);  
 };

当你想获得价值时:

 Session.get('user'); 

答案 1 :(得分:0)

如果你想用_id默认创建一个寄存器,你可以采用以下方式

在你的程序中

  

Collection.insert({_ ID: 'ID-默认'});

如果你想在Mongo Db上打开控制台并运行Meteor,稍后打开其他控制台并在你的项目文件夹中执行

  

meteor mongo

对于插入

  

db.collection.insert({_ ID: 'ID-默认'});