使用Ember 1.3.0-beta.4和Ember Data 1.0.0-beta.4。
我正在尝试使用简单的deleteRecord()
调用删除记录。但是,当我在记录上触发save()
时,会执行PUT
而不是DELETE
。
record.deleteRecord();
record.save();
执行PUT
。
事实证明isDeleted
以某种方式设置不正确。或许它永远不会改变。
record.get('isDeleted'); // false
record.get('isDirty'); // false
record.deleteRecord();
record.get('isDeleted'); // false
record.get('isDirty'); // true
然而currentState
DOES似乎已经改变。
record.deleteRecord();
record.get('isDeleted'); // false
record.get('currentState.isDeleted'); // true
record.get('currentState.stateName'); // "root.deleted.uncommitted"
其他记录正常删除。很少(十分之一)这个代码表现得像预期的那样让我相信这是一个排序问题。
有什么理由,删除记录会有这样的行为吗?