我最近不得不将所有路线转换为深度嵌套版本。例如:pages.page
变成了books.book.pages.page
。对于我正在做的一些链接来说,这是必要的。问题是我有一个控制器声明它需要另一个控制器。具体来说,它需要book
控制器。但是现在book
控制器是books.book
控制器。这就提出一个问题,因为这个代码将不再有效:控制器#需要 - 路由有点吗?
this.get('controllers.books.book');
现在认为book
只是在books
控制器的性能,在现实中,它都是一个性质。我该如何解决这个问题?到目前为止,我已经试过这些方法,没有一个工作:
this.get('controllers').get('books.book');
this.get('controllers.`books.book`');
this.get("controllers.'books.book'");
编辑:我还应该指出的是叫this.get('controllers').needs
给我的数组:['application', 'books.book']
。
这实际上似乎没有工作。使用'controllerFor'可以返回正确的控制器,但是使用该代码只会返回undefined。另外,我在第一篇文章中加入了一些信息来澄清一些事情。 – GJK
划痕,这实际上确实工作。我只需要声明控制器需要'bookBook'而不是'books.book'。谢谢! – GJK