我正在寻找对对象的关联进行排序 - 例如,我在一个组(对象)页面上,并且该组有很多我在该页面上显示的帖子。我将如何对这些帖子进行排序以按 created_at 或其他属性排列它们?
问问题
227 次
1 回答
0
您可以将 anArrayController
用于您的 s 集合,Post
然后使用内置的sortProperties
和sortAscending
属性。
App.GroupRoute = Ember.Route.extend({
setupController : function(controller,model){
this._super(controller,model);
this.controllerFor('posts').set('content',model.get('posts'));
}
});
App.GroupController = Ember.ObjectController.extend({
needs : ['posts']
});
App.PostsController = Ember.ArrayController.extend({
sortProperties : ['createdAt'],
sortAscending : false
});
通过调用render
您的组模板,您可以访问need
由您的主控制器编辑的控制器。那么你的group
模板看起来像这样:
<h2>Group : {{name}}</h2>
{{ render 'posts' }}
然后posts
模板可能是:
<ul>
{{#each post in arrangedContent}}
<li>{{ post.title }}</li>
{{/each}}
</ul>
请注意,它arrangedContent
用作集合的名称。set
您可以通过tingsortProperties
和sortAscending
on动态更改排序顺序PostsController
。
这是一般思想的 JSFiddle(但具有不同的模型名称)。
单击表中的列标题以查看动态排序。
于 2013-09-17T03:13:29.063 回答