Ember.js Как получить контроллер в нуждах, который вложен controllerName

Я хочу использоватьthis.get('controllers.pack.query'); получитьApp.PackQueryController вApp.PackController, но не удалось.

Я думаю, что проблема в использовании Emberpack неpack.query какcontrollerName когда он пытается получить контроллер. Хотя я могу получить контроллер поthis.controllerFor('pack.query'), но Эмбер говорит, что это устарело, пожалуйста, используйтеneeds вместо

Моя карта маршрутизатора нравится ниже, и ямы определилиneeds: ['pack.query'] вApp.PackController

App.Router.map(function () {
    this.resource('pack', function () {
        this.route('index', {path: '/:pack_id'})
        this.route('query');
    });
});

App.PackController = Ember.ObjectController.extend({
    needs: ['pack.query'],
    queryPack: function () {
        var packQueryCtrller = this.get('controllers.pack.query');            

        Ember.debug('packQueryCtrller: ' + packQueryCtrller);
        //DEBUG: packQueryCtrller: undefined

        packQueryCtrller.queryPack(); //faild packQuery is undefined
    }
});

App.PackQueryController = Ember.ArrayController.extend({
    queryPack: function (queryKey) {
        //...do query pack
    }
});

Ответы на вопрос(3)

Ваш ответ на вопрос