0

我在这里使用ember-model。我正在尝试从作为夹具节点之一的数组中删除记录。

这个 ( cart_items) 数组hasMany与模型有关系。 我在这里发布了我的完整代码。 在这里,我正在尝试使用以下代码从表中删除行:

 deleteproduct: function(product){
    if (window.confirm("Are you sure you want to delete this record?")) {                           
    this.get('model').map(function(application) {
        application.get('cart_items').deleteRecord(product);                    
    });            
  }
}

但它抛出了一个异常:Uncaught TypeError: Object [object Object] has no method 'deleteRecord'

我试过用这个。在这里,我没有得到任何异常,但记录也没有被删除。

 deleteproduct: function(product){     
    if (window.confirm("Are you sure you want to delete this record?")) {                                
    this.get('model').map(function(application) {
        application.get('cart_items').map(function(cartitem) {
        console.log("+++++++++++++++++++++++");
        console.log(JSON.stringify(cartitem));
        console.log("***********************");
        console.log(JSON.stringify(product));            
            product.deleteRecord();                 
        });     
    });            
  }
}

我不明白这里发生了什么?

我认为有一些我无法找到的上下文问题。任何人都可以帮助我使这个 jsfiddle 工作吗?

4

1 回答 1

1

您应该使用removeObject而不是deleteRecord.

编辑:我已经更新了你的jsfiddleremoveObject方法是 on cart_itemsnot on product

于 2013-09-10T11:06:06.370 回答