【问题标题】:IronRouter authorisation controllerIronRouter 授权控制器
【发布时间】:2013-08-29 10:09:24
【问题描述】:
我想知道是否有人可以演示如何在处理用户身份验证并根据结果显示适当路由/模板的路由器控制器类上使用全局“之前”操作。
我的用例是让 AppController 充当身份验证防火墙并在用户注销时阻止任何子控制器操作。例如
// Create a primary app controller stub with the auth firewall
AppController = RouteController.extend({});
// Extend the AppController with all the other app routes
MainController = AppController.extend({});
任何帮助将不胜感激!
【问题讨论】:
标签:
routing
meteor
iron-router
【解决方案1】:
在我用流星写的博客中,我使用代码:
AppController = RouteController.extend({
before:function(){
if(_.isNull(Meteor.user())){
Router.go(Router.path('home'));
}
}
})
AdminPostController = AppController.extend({
waitOn: function() { return App.subs.posts}
});
Router.map(function(){
this.route('submitPost', {
path: '/submitPost',
controller:'AdminPostController',
template:'postCreate'
});
this.route('editPost', {
path: '/post/:slug/edit',
controller:'AdminPostController',
template:'postEdit'
});
})