2013-07-31 12 views
5

Ember.Route modeliyle setupController ile ilgili bir karışıklık yaşıyorum. benEmber.Route üzerinde setupController kullanırken modeli denetleyicide ayarlamanız mı gerekiyor?

App.AppsShowRoute = Ember.Route.extend({ 
    model: function(params) { 
    return App.LtiApp.find(params.id); 
    }, 

    setupController: function(controller, model) { 
    controller.set('reviews', App.Review.find()); 

    // Why is this line needed? Shouldn't it have the model 
    // already on the controller? 
    controller.set('model', model); 
    } 
}); 

model zaten üzerinde olmamalı (inline yorumu görmek) Aşağıdaki eklemem gerekiyor ki neden

http://jsbin.com/ihakop/5/edit

merak ediyorum: Burada bir örnek uygulamaya sahip kontrolör?

cevap

9

Bu güzel bir soru. Bu davranış RC4 ile tanıtıldı. Açıklama için bu blog post'a bir göz atın. Ember adamlarının tavsiyesi, _super():

App.AppsShowRoute = Ember.Route.extend({ 
    model: function(params) { 
    return App.LtiApp.find(params.id); 
    }, 

    setupController: function(controller, model) { 
    this._super(controller, model); 
    controller.set('reviews', App.Review.find()); 
    } 
}); 
'a bir çağrı eklemektir.
İlgili konular