Сортируемый mixin применяется к контенту, а не к контроллерам содержимого.
Код: https://github.com/emberjs/ember.js/blob/v1.1.2/packages/ember-runtime/lib/mixins/sortable.js#L72
Вы, вероятно, хотите добавить любую логику вы добавляете на контроллерах к моделям.
Конкретный вариант использования, о котором вы говорили ранее, лучше всего подходит для модели. На самом деле место, где вы рисуете линию на контроллере и модели, является желательным. Если свойство должно сохраняться на контроллерах, тогда вы должны добавить его в модель, особенно если контроллер не является одиночным контроллером. Если это одноэлементный контроллер, и модель никогда не изменяется под ним, то свойство может жить на контроллере.
Важно отметить, что определение свойства на модели не означает, что вам нужно получить его с сервера и не сохранять на сервере.
App.User = DS.Model.extend({
name : DS.attr(), // this will be saved to the server
something: 31 // this isn't a DS attr, it isn't going anywhere
});
В качестве примечания, я раньше лгал о чем-то.
Вы можете поговорить с дочерними контроллерами от вашего родительского контроллера.
С внутренней стороны родительского контроллера вы можете получить доступ к дочерним контроллерам с помощью objectAt и выполнить итерацию над родительским контроллером.
В данном примере это контроллер родительского
console.log(this.objectAt(0));
this.forEach(function(itemController){
console.log(itemController);
});
http://emberjs.jsbin.com/AQijaGI/1/edit
Причина, по которой свойство определяется в контроллере, а не модель, что свойство может быть модифицирована путем взаимодействия с пользователем. Как вы поступите в таком случае? – cwarny
Да, полностью, http://jsbin.com/ubolEdo/11/edit – Kingpin2k
Это правильная ссылка? Я чувствую, что ничего не отличается от моей ссылки – cwarny