2016-07-24 3 views
0

Im пытаясь ограничить маршрут только тех пользователей, чьи роли администратораMeteor: Ограничение маршрут для администратора только администратора ролей

Router.route('/admin', { 
    if(Roles.userIsInRole(Meteor.user(), ['admin'])) { 
    template: 'admin' }; 
    else 
     template: 'restricted' 
}); 

вернулся с неожиданной лексемы

ответ

0

Опция template Iron Router для простого когда вам просто нужно перейти на постоянный шаблон, который никогда не изменится и не понадобится какой-либо конкретный параметр.

Если ваш маршрут более сложный (как в вашем случае, когда вы возвращаете другой шаблон на основе роли текущего пользователя), вы должны использовать опцию маршрутизатора action.

Обратите внимание, что если вы используете Iron Router, новый синтаксис Router.route('/path', actionFunction)

+0

Спасибо за то, обновил мой код, и это работает. Im интересно, если он достаточно защищен, хотя – Farhan

+0

Чтобы улучшить «безопасность», обычный трюк состоит в том, чтобы обернуть содержимое защищенных шаблонов с помощью '{{#if isInRole" admin "}}' (см. [Примеры использования] (https: // github .com/alanning/meteor-role # examples-examples)), даже если вы предварительно проверите роль пользователя. – ghybs

+0

ive реализовано, что уже, подумал, что слишком просто быть достаточно обеспеченным ха-ха. я догадываюсь, что я больше читаю о субтитрах и публикую coz im, которые все еще учатся, и у вас есть автообновление и небезопасность. – Farhan

0

удалось заставить его работать благодаря предложению ghybs-х годов. Ive обновил его

Router.route('/admin', { 
    action: function() { 
    if(Roles.userIsInRole(Meteor.user(), ['admin'])) { 
     this.render('admin') } 
     else 
     this.render('denied') 
     } 
    }); 

Если кто-то может обеспечить более плотный & безопасный код пожалуйста вход: D Thanks

+0

Вы можете найти http://0rocketscience.blogspot.com/2015/08/meteor-build-clean-easy-to-maintain.html полезным –

+0

, что вы повсюду. : D благодарит Мишеля. – Farhan

+0

быстрый вопрос Michel, знаете ли вы обновленное и хорошее руководство по внедрению PayPal для webapp? – Farhan

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

  • Нет связанных вопросов^_^