2013-09-30 179 views
1

是否可能具有相同名称的嵌套路由?例如:灰烬。路线。嵌套路由中的相同名称,路由查找

// url - category/12345/card/id99 
this.resource('category', { path: '/category/:category_id' }, function() { 
    this.resource('card', { path: 'card/:card_id' }); 
}); 

// url - semantic/books/card/id99 
this.resource('semantic', { path: '/semantic/:semantic_id' }, function() { 
    this.resource('card', { path: 'card/:card_id' }); 
}); 

当我打电话transitionTo(“一卡通”)路由器查找唯一途径“卡”

看起来像路由器具有普通路由表和路线具有相同名称的最后一个版本不断被最后覆盖。

我错了?

回答

0

是的,对于版本v.1是不可能的。

0

想象一下,直接在浏览器中打'card /:card_id'。路由器不能区分父路由或另一路父路由的上下文。在您的相关问题(Ember. Making modal view that has its own route)中指出的处理这个问题的更合适的方法是将一条单独的路由传递给“上一个路由”上下文。

+0

在浏览器中我有2个目前在Ember中完全不同的网址。由于前缀/语义或/类别。 我现在有效。因为我给他们不同的名字。 但是不可能有相同的名字。 你说得对,如果我想执行transitionTo(),我必须构建上下文。 – bug0r