2017-05-27 4 views
0

Ich habe das Alanning: Rollen-Paket auf meinem Meteor Projekt für die Einstellung der Rolle auf meinem Benutzer.Meteor Test, wenn der Benutzer die Rolle admin

Ich füge meine ersten Nutzer mit diesen Befestigungen:

if (Meteor.users.find().count() === 0) { 

    const adminUsername = "username"; 
    const adminPassword = "password"; 

    const adminAccount = Accounts.createUser({ 
    username: adminUsername, 
    password: adminPassword 
    }); 

    Roles.addUsersToRoles(adminAccount, 'admin', Roles.GLOBAL_GROUP); 

} 

Und ich testen, ob der Benutzer mit diesem Admin:

const testAdmin = Roles.userIsInRole(Meteor.userId(), 'admin', Roles.GLOBAL_GROUP); 

console.log(testAdmin); // return false, why ? 

Mein console.log off Testadmin false zurück, und ich don verstehe nicht warum:/Auf mongoDb, sehe ich das:

"roles" : { 
    "__global_roles__" : [ 
     "admin" 
    ] 
} 

Also, mein Benutzer wurde Admin-Rolle. Warum mein Test nicht wahr?

Jeder kann mir helfen?

Danke Gemeinde!

Antwort

0

Versuchen Sie es, wenn es mindestens auf Serverseite funktioniert.

Wenn ja, müssen Sie nur das roles Feld von Meteor.users veröffentlichen. Meteor veröffentlicht nicht alle Benutzerdaten auch mit autopublish Paket.

+0

Ja, es funktioniert auf der Serverseite, nicht auf dem Client :) Vielen Dank für Ihre Hilfe! –

Verwandte Themen