Я использую последнюю сборку Ember.js. У меня есть приложение Ember, которое отображает гистограмму с помощью flot.js. Представление привязано к одноэлементному объектному контроллеру для динамического обновления диаграммы. У меня есть простая демонстрация jsbin этой работы здесь: http://jsbin.com/edosaf/2/edit< /а>. Обратите внимание, что эта демонстрация создает объект cardController вместо его расширения. Вот соответствующий код:
App.cardController = Ember.ObjectController.create({
id: 1,
name: 'Visa',
chartData: [ [2011, 450], [2012, 550], [2013, 320] ]
});
App.ApplicationView = Ember.View.extend({
templateName: 'application',
chartValuesBinding: 'App.cardController.chartData'
});
Мне нужно изменить приведенный выше код, чтобы расширить cardController, а не создавать его, но при этом привязать его к представлению.
Я хочу расширить эту демонстрацию, используя различные данные гистограммы на основе card_id, переданного в URL-адрес. Маршрутизация будет иметь вид #/card/:card_id. Меня смущает, как связать мой ChartView с разными экземплярами моего Card ObjectController. Моя идея состоит в том, чтобы иметь Cards ArrayController для управления всеми объектами кредитных карт. Затем используйте Card ObjectController для управления активной картой, которая будет привязана к ArrayController, а также к ChartView.
Привязка: Cards ArrayController => Card ObjectController => Chart View
Я создал еще один jsbin, который пытается реализовать желаемую маршрутизацию, и Cards ArrayController (приложение не работает): http://jsbin.com/edosaf/4/edit
Как я могу привязать представление к экземпляру контроллера, созданному маршрутизатором ember? В этом примере, как бы вы рекомендовали спроектировать приложение ember для привязки объекта CardController к ChartView с помощью маршрутизации #/card/:card_id?