我想对嵌套数组进行排序。为了对AFAIK进行排序,我们需要使用ArrayController。
我有一个数组,如下:
[{
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
Pl帮助,我看到了围绕这个的所有答案,但它们都没有为我工作。
答案 0 :(得分: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>