2012-06-22 2 views
2

Когда я использую динамический сегмент в Ember.Router, тогда ember автоматически идентифицирует модель, вызывает поиск (индекс) на ней и задает результат содержимому контроллера. Это верно?emberjs автоматическая привязка модели/создание

Если да, то как определяется модель? По имени, которое я дал в функции «connectOutlet»?

Есть ли что-то вроде этого для маршрутов без динамической части? Если «нет», почему существует автоматическое создание и привязка View и Controller, а модель не?

ответ

1

тип модели предоставляется Ember.Route через атрибут modelType:

Ember.Route.extend({ 
    route: '/:stuff_id', 
    modelType: 'App.Stuff', 

    connectOutlets: function(router, stuff) { 
     ... // work with Stuff instance 'stuff' here 
    } 
} 
+0

Хм, спасибо. Я попытался сделать пример сейчас, но, похоже, он не работает: http://jsfiddle.net/bhEtU/ Я думаю, что функцию App.ItemList.find следует вызвать, когда я введу детали. – Lux

+0

Я обновил вашу скрипку: http://jsfiddle.net/bhEtU/1/ Что вам еще не хватает? –

+0

Спасибо. Две вещи: маршрут в URL должен быть «/ item/detail/1», а не «/ item/detail/undefined». И содержание подробного маршрута не должно быть единственным элементом ItemList, он должен быть элементом ItemDetail. Таким образом, контент должен быть ItemDetail.find (контекст). Надеюсь, U понимает, что я имею в виду. – Lux

Смежные вопросы