如何通过ID删除Ember数据记录

Hao*_* Li 7 ember.js ember-data

使用Ember Data,我想知道如何删除记录,因为我知道它的id.

Jer*_*een 10

请注意,在调用之后rec.deleteRecord()还需要调用rec.save()"提交"删除.

this.get('store').find('model', the_id_of_the_record).then(function(rec){
  rec.deleteRecord();
  rec.save();
});
Run Code Online (Sandbox Code Playgroud)

您可以通过在上面的JSBin中添加记录(http://jsbin.com/iwiruw/458/edit),删除它,然后重新加载页面来确定这是必要的.在页面重新加载后(或者如果单击"Run with JS"按钮),您将看到记录已"复活".这里rec.save()添加了一个jsbin ,你可以看到记录没有恢复生命.

http://jsbin.com/iwiruw/460/edit


cho*_*per 9

在最新版本的Ember Data(beta 4和更新版本)中,我们destroyRecord()推出了这样做deleteRecord(),save()一次性完成,所以Jeremey Green提出的更短的做法是:

this.get('store').find('model', the_id_of_the_record).then(function(rec){
  rec.destroyRecord();;
});
Run Code Online (Sandbox Code Playgroud)