重定向到仅索引父路由

时间:2017-02-28 17:47:26

标签: ember.js

我试图找到一种方法,如果访问父路由,则重定向到索引路由,但如果用户访问parent.child1或parent.child2路由,则不会重定向。

这样的事情可能吗?

SELECT YEAR(matters.created_at) AS 'year', COUNT(1) AS 'matters'
FROM matters
GROUP BY YEAR(matters.created_at)


SELECT YEAR(notes.created_at) AS 'year', COUNT(1) AS 'notes'
FROM notes
GROUP BY YEAR(notes.created_at)

2 个答案:

答案 0 :(得分:1)

如果我理解你的话你想要这个:

  

如果用户位于parent路线但不在child1但不在child2路线中,则会重定向到index路线。

为此,您需要了解您有一个隐含的parent.index路线。因此,根据您的路线定义,这是您的路线:

  • index
  • parent.index
  • parent.child1
  • parent.child2

你不能只在路线parent!您始终位于parent.indexparent.child1parent.child2

所以我认为你想要的是从parent.index重定向到index

为此,只需创建app/routes/parent/index.js路线,然后在beforeModel挂钩电话this.transitionTo('index');中。

答案 1 :(得分:0)

将重定向条件放入parent路由beforeModel挂钩。

请参阅勒克斯的答案。使用

在父路线下创建index路线
ember g route parent/index

然后将重定向逻辑放在父/索引路由的beforeModel挂钩中。

我以前的回答不起作用,因为它会阻止儿童路线进入。