1
App.ApplicationRoute = Ember.Route.extend({
    setupController: function(){
        this.controllerFor('App.Namespace1.Object1').set('model', model);
    }    
});

App.Namespace1.Object1Controller = Ember.ObjectController.extend({});

これは機能します

App.ApplicationRoute = Ember.Route.extend({
    setupController: function(){
        this.controllerFor('App.Object1').set('model', model);
    }    
});

App.Object1Controller = Ember.ObjectController.extend({});

これは私が見るエラーです。

Error: assertion failed: You are trying to look up a controller that you did 
not define, and for which Ember does not know the model.

This is not a controller for a route, so you must explicitly define the controller 
(Minerva.Namespace1Object1Controller) or pass a model as the second parameter to 
`controllerFor`, so that Ember knows which type of controller to create for you.
http://localhost:8090/EmberApplication/js/vendor/ember-1.0.0-pre.2.js
Line 53

EmberJS は複数レベルの深さの名前空間をサポートしていますか?

4

1 に答える 1

1

朗報です!のコードを詳しく調べるとEmber.Resolver、次のことが可能であることがわかったため、古い回答を削除しました。

this.controllerFor('App/Namespace1/object1')

(慣例では、小文字のルートのコンテキストでコントローラーを参照します)

于 2013-03-22T21:41:29.483 に答える