我想将Ember Data changedAttributes提交到商店记录,而不使用save()触发AJAX调用。有没有我可以传递给rec.save()的选项,它会将Ember Data记录设置为清理?如果没有解决方法?
答案 0 :(得分:2)
没有内置的方法来清除使用.save()的ember-data标志,而不是发出外部请求。
。save()将
保存记录并通过适配器将记录的任何更改保留到外部源。
您可以通过将adaptorOptions对象传递给save方法来覆盖适配器中的save方法并避免外部请求。
export default DS.RESTAdapter.extend({
updateRecord: function(store, type, snapshot) {
if (snapshot.adapterOptions.no_persist) {
// Return a promise here containing snapshot.record
} else {
this.super(...arguments)
}
}
});
....
record.save({adapterOptions: {no_persist:true}});