我最近不得不将我所有的路线转换为深度嵌套的版本。例如: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']
。