2013-02-15 4 views
0

У меня есть контроллер, где я определить TakenSeatNumbers переменную:ember.js получить данные из контроллера

TravelClient.TourSeatsController = Ember.ObjectController.extend({ 
    selectSeat: function(seat) { 
    var orderTransaction = TravelClient.store.transaction(); 
    var takenSeatNumber = orderTransaction.createRecord(TravelClient.TakenSeatNumber, {number: seat.get('id')}); 
    } 
}); 

Как получить доступ к TakenSeatsNumbers из tour/seats шаблона? Модель Tour находится в контексте TourSeatsController.


+0

Вы можете изменить эту функцию, переменное свойство контроллера так это публично. Объявите его вне функции 'selectSeat' и пометьте его как свойство – MilkyWayJoe

+1

no. вы должны сделать 'takeSeatsNumber: null, selectSeat: function (seat) {...}', а затем из функции 'selectSeat' вы заполняете ее как' this.set ('tookSeatsNumber', orderTransaction .... 'и в ваш шаблон вы визуализируете его как '{{tookSeatsNumber}}'. – MilkyWayJoe

+0

Напиши это как ответ. Я согласен с этим. – xamenrax

ответ

1

В соответствии с моим комментарием, продвигать эту функцию переменную (takenSeatsNumber) в собственность в контроллере, так это публика, похоже на следующее:

TravelClient.TourSeatsController = Ember.ObjectController.extend({ 
    takenSeatNumber: null, 
    selectSeat: function(seat) { 
    var orderTransaction = TravelClient.store.transaction(); 
    this.set('takenSeatNumber', 
      orderTransaction.createRecord(TravelClient.TakenSeatNumber, {number: seat.get('id')}) 
    ); 
    } 
}); 
+0

Кстати, что делать, если мне нужно будет получить эти данные с другого контроллера в будущем? ? – xamenrax

+0

Когда вы говорите, что получите данные от другого контроллера, что именно вы имеете в виду? – MilkyWayJoe

+0

Как я могу получить доступ к записям 'TakenSeatsNumber' из транзакции заказа от контроллера, отличного от' TourSeatsController'? – xamenrax

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