J'ai un ArrayController, et je voudrais regrouper le contenu de ce ArrayController basé sur la valeur d'une clé spécifique.Ember.js: Regrouper/partitionner un ArrayController
Par exemple, si les objets de mon ArrayController sont:
id status name
-----------------------------
1 1 some name
2 1 some other name
3 2 blah
4 3 blah again
Ensuite, je voudrais regrouper le contenu par status
.
Pour ce faire, j'ai essayé d'utiliser les propriétés calculées dans mon ArrayController:
App.SomeArrayController = Ember.ArrayController.extend({
itemController: 'some-item',
status1: Ember.computed.filterBy('content', 'status', 1),
status2: Ember.computed.filterBy('content', 'status', 2),
status3: Ember.computed.filterBy('content', 'status', 3)
});
Dans le modèle, ceux-ci sont en cours d'affichage, mais ils sont pas être enveloppé par le itemController I spécifié dans la ArrayController:
// item controller used in the ArrayController
App.SomeItemController = Ember.ObjectController.extend({
anotherKey: function() {
return 'hey ' + this.get('name');
}.property('name')
});
<!-- template to display status=1 items -->
{{#each status1}}
// displays the name (as a property from the model)
{{this.name}}
// nothing displays here
// (leading me to believe it is not being wrapped by the item controller)
{{this.anotherKey}}
{{/each}}
Qu'est-ce que je fais mal?