1
我有這樣的記錄,我創建的模型只存在於本地(不在api中)。 的模型是如下:刪除模型僅存在於本地的記錄Ember
TM.Vdpmodel=DS.Model.extend({
type:DS.attr(),
description:DS.attr(),
vds:DS.attr(),
});
我使用該模型來創建的對象(vdps)在JSON陣列。見下文。
{"vdps":[{"type":"ssdfdfg","description":"fhfgh","vds":[{"type":"fghgh","example":"jghhgj"},{"type":"gjghj","example":"ghjghj"},{"type":"ghjghj","example":"ghjghj"}]}],"asset_usage":[]}
我創建它們使用
TM.obj.vdp.pushObject(this.store.createRecord('vdpmodel',{
type:this.get("vdp11"),
description:this.get("vdp12"),
vds:TM.vdobj.vd.objectsAt([this.get("vdcount"),this.get("vdcount")+1,this.get("vdcount")+2])
}));
此記錄僅保存在本地。現在我想從該商店中刪除一個記錄,該記錄的類型值爲「abc」。我該怎麼做呢?請記住,該記錄目前僅存在於本地。
我已經試過如下:
var records=this.store.filter('vdpmodel',function(data){
return data.get('type')==="abc";
});
records.forEach(function(record){
record.deleteRecord();
});
但永遠不會填充記錄。任何想法我在這裏做錯了嗎?
結果的filterby來解決這個我想你應該REMOVEOBJECT因爲該記錄僅局部存在,並不需要與後端同步。 deleteRecord將導致調用服務器來提交更改,因爲它是本地的,所以不需要調用。 – kushdilip 2015-02-23 13:22:03
你應該使用unloadRecord,就像你在前面的問題中提到的那樣:http://stackoverflow.com/questions/28648200/delete-records-from-local-store-only-in-ember – Kingpin2k 2015-02-23 14:56:56
我已經用uloadRecord &deleteRecord,兩者似乎都在做同樣的事情。 – pseudoanime 2015-02-23 15:21:52