如何在Meteor Js中对用户角色进行分组

如何在Meteor Js中对用户角色进行分组,meteor,Meteor,有人能帮我解决这个问题吗?我想分配多个用户成为每个类别的管理员 例如,我有收藏: User:{emily, bob, roberts, alex} Category:{Laptop, Computer, Tablet, Network} 我如何分配角色让emily成为笔记本电脑和电脑的管理员?另外,鲍勃和亚历克斯是网络管理员 非常感谢你的好意和帮助。谢谢……) 我知道这有点老了。但如果有人在搜索类似的内容 假设用户集合中有这样的用户 var emily = Meteor.users.find

有人能帮我解决这个问题吗?我想分配多个用户成为每个类别的管理员

例如,我有收藏:

User:{emily, bob, roberts, alex}

Category:{Laptop, Computer, Tablet, Network}
我如何分配角色让emily成为笔记本电脑和电脑的管理员?另外,鲍勃和亚历克斯是网络管理员


非常感谢你的好意和帮助。谢谢……)

我知道这有点老了。但如果有人在搜索类似的内容

假设用户集合中有这样的用户

var emily = Meteor.users.findOne({name: "Emily"});
var bob = Meteor.users.findOne({name: "Bob"});
var roberts = Meteor.users.findOne({name: "Roberts"});
var alex = Meteor.users.findOne({name: "Alex"});
然后,您可以将用户设置为以下角色:

Roles.addUsersToRoles(emily._id, ['Laptop', 'Computer'], 'admin');
Roles.addUsersToRoles(bob._id, ['Network'], 'admin');
Roles.addUsersToRoles(alex._id, ['Network'], 'admin');
在中,如果您查看用户集合的Emily记录,您将看到Emily的角色:

"roles" : {
        "admin" : [
                "Laptop",
                "Computer"

        ]
}
然后,如果要检查用户是否是某个组的管理员,可以尝试:

如果 Roles.userIsInRole(emily._id,'Laptop','admin')/==true Roles.userIsInRole(emily._id,'Network','admin')/==false Roles.userIsInRole(bob._id,'Laptop','admin')/==false Roles.userIsInRole(bob._id,'Network','admin')/==true

或者来自模板

{{#if isInRole 'Computers' 'admin'}}
{{/if}}
如果数据库中有类别

var network_category = Categories.findOne({..})

Roles.userIsInRole(bob._id, network_category.name, 'admin') // == true

您是在使用还是在编写自己的实现?我使用的是alanning角色。是否可以为每个类别分配用户。希望你能帮忙。。