2014-09-11 2 views
0

중첩 배열을 정렬하려고합니다. AFAIK를 정렬하려면 ArrayController를 사용해야합니다.EmberJS : 중첩 ArrayControllers 정렬 문제

나는과 같이, 배열을 가지고 :

[{ 
    id : 1, 
    voucherno: 1, 
    details : [{id : 3, srno : 3}, {id :2,srno : 2}, {id : 1, srno : 1}] 
}, 
{ 
    id : 2, 
    voucherno: 2, 
    details : [{id : 6, srno : 3}, {id : 5, srno : 1}, {id: 4, srno : 2}] 
}] 

내가 srno에 따라 세부 데이터를 정렬하고 싶습니다. 여러 가지 다른 일을 시도한 후에 이것이 내가 떠오르는 것입니다. 그러나 그것은 효과가 없습니다.

내 모델은 다음과 같습니다

App.Sale = DS.Model.extend({ 
    voucherno : DS.attr('number'), 
    details : DS.hasMany('Detail',{ async: true }) 
}); 

App.Detail = DS.Model.extend({ 
    srno : DS.attr('number') 
}); 

경로 :

App.Router.map(function() { 
this.resource('sales', { 
    path: '/' 
}, function() { 
    this.resource('sale', { 
     path: "/:sale_id" 
    }, function() { 
     this.resource('details'); 
    }); 
}); 
}); 

바이올린은 여기에 있습니다 : JSFiddle

경기 수 도움말, 나는이 주위의 모든 답변을 보았다, 그러나 그들 중 누구도이 작동하지 않습니다 나를 위해.

답변

2

당신을 수정했습니다. 오히려 콘센트는 특정 컨트롤러를 설정하는 {{render}}을 사용하십시오. 그것은 정렬 문제가 아닙니다.

http://jsfiddle.net/11b78Lpz/3/

는 기본적으로 판매 템플릿에 다음에 오는 {{outlet}}를 교체했다.

<script type="text/x-handlebars" data-template-name="sales"> 
    <div class="container-fluid"> 
    <div >Voucher No</div> 
     <div class="row"> 
     {{#each model}} 
      <div class="row col-md-offset-2 col-md-4 ">{{voucherno}}</div> 
      {{render details details}} 
     {{/each}} 
     </div> 
    </div> 
</script>