2016-06-07 4 views
0

Я строю CMS, и в зависимости от пользователя role они смогут редактировать/обновлять/удалять/создавать разные области, но фильтруются их role как в, один пользователь с role: 'basic role' не может удалить то, что пользователь с role: 'superuser' может ,Правильный способ проверить, имеет ли пользователь роль в метеоре?

То, что я на данный момент это:

Collection.allow({ 
    insert: function(userId, collection) { 
    return Meteor.users.findOne({_id: userId, profile: {role: 'admin'}}); 
    }, 
    update: function(userId, collection, fields, modifier) { 
    return Meteor.users.findOne({_id: userId, profile: {role: 'admin'}}); 
    }, 
    remove: function(userId, collection) { 
    return Meteor.users.findOne({_id: userId, profile: {role: 'admin'}}); 
    } 
}); 

ВОПРОС ли это правильный путь для проверки пользователей роли? Есть ли лучшие способы? Каковы наилучшие методы для этого?

Спасибо!

ответ

2

Вы должны взглянуть на пакет alanning:roles. Он широко используется и даже упоминается в документах Meteor. Помимо ролей, он также поддерживает группы.

+1

Это канонический пакет _roles_ для Метеор. –

Смежные вопросы