2014-04-08 2 views
1

게임 모델이 있습니다. 각 게임마다 여러 개의 카드가 있습니다.Ember.js afterModel의 모델 값 액세스

App.GameRoute = Ember.Route.extend({ 
    model: function (params) { 
     return this.store.find('game', params.game_id); 
    }, 
    afterModel: function (model) { 
     var store, gameId, promises; 

     store = this.get('store'); 
     gameId = model.get('id'); 

     promises = [ 
      store.find('card', { gameId: gameId }) 
     ]; 

     return Ember.RSVP.all(promises); 
    } 
}); 

특정 게임을 실행하면 관련 카드가 모두 성공적으로로드됩니다.

내 템플릿에 모든 카드를 반복하고 싶습니다. 어떻게해야합니까? {{#each}}의 가능한 모든 변형을 시도했지만 아무 효과가 없습니다. 또한 Ember Chrome 툴바를보고 데이터 탭을 보면 모든 카드가 있습니다.

답변

3

내가 경로를 변경하여 고정 :

App.GameRoute = Ember.Route.extend({ 
    model: function (params) { 
     return Ember.RSVP.hash({ 
      game: this.store.find('game', params.game_id), 
      cards: this.store.find('cards', { gameId: params.game_id }) 
     }); 
    } 
}); 

나는 이제 카드 돌이이 방법 :

{{#each card in Cards}} 
    {{card.id}} 
{{/each}} 
+0

** 카드를 활용하는 이유 ** – FutuToad