asquet/ember-model — pull request #4 by ipavelpetrov (2014-07-28 10:27:44+00:00)
Title: Wrong dirtying

Неправильно выставлялся статус isDirty, из за вызова метода removeObject, переместил удаление обзерверов в тело метода.

к томуже removeObject весьма странно выглядит:

removeObject : function(obj) {
if (!obj.record) { // ???? если record не существует то он удаляет навешанные на него обзёрверы (и по этой кальке сделано несколько методов)
obj = obj._reference || obj._getOrCreateReferenceForId(obj.get('id'));
Ember.removeObserver(obj, 'record.isDirty', this, 'recordStateChanged');
Ember.removeObserver(obj, 'record.isDeleted', this, 'recordStateChanged');
}//TODO change id to "get primary key"
this.get('content').removeObject(obj); // но причина isDirty была здесь, ибо удалять объект не требуется, так как в последствии content переназначается
},

В остальных строчках просто подправил форматирование.