我的路由器有路径设置列出壁纸。索引显示壁纸列表。还有一个分类的壁纸列表。最后,还有一个用于查看特定壁纸的页面。
路径设置如下:
/wallpapers/
壁纸列表/wallpapers/:category_id/
特定类别的壁纸列表/wallpapers/:category_id/:wallpaper_id/
单一壁纸页面</ li>
醇>
点击后,1和2中的条目显示为3。
现在我希望3成为模态,它会在后台弹出前一个路线。我可以使用1或2作为父级来使用它。但是如果我想为两者做这件事,我需要完全复制3的路由,控制器,模板和模型,因为路由器映射会自动在特定目录中查找路由/模板/模型/控制器。对两个地方使用现有控制器的任何尝试都会导致它仅适用于一条路线,或者抛出一条错误,说明找不到该模型。
如何在1和2中使用相同的路径/控制器/模板/模型组合?
Router.map(function() {
this.route('wallpapers', function() {
this.route('index', { path: '/' }, function() { // All wallpapers
this.route('wallpaper', { path: ':category_id/:wallpaper_id' }) // Modal dialog
})
this.route('category', { path: ':category_id' }, function() { // Categorized wallpapers
this.route('wallpaper', { path: ':wallpaper_id' }) // Modal dialog
})
})
})