我在Meteor projet上添加了alanning:roles包,用于设置我的用户角色。
我将第一个用户添加到此灯具中:
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);
}
我测试用户是否是管理员:
const testAdmin = Roles.userIsInRole(Meteor.userId(), 'admin', Roles.GLOBAL_GROUP);
console.log(testAdmin); // return false, why ?
我的console.log关闭testAdmin返回false,我不明白为什么:/在mongoDb上,我看到了这个:
"roles" : {
"__global_roles__" : [
"admin"
]
}
所以,我的用户一直是管理员角色。为什么我的测试不会返回true?
任何人都可以帮助我?
谢谢社区!
答案 0 :(得分:0)
尝试至少在服务器端工作。
如果是这样,则表示您只需要发布_name
的{{1}}字段。即使使用roles
包,Meteor也不会发布所有用户数据。