当模型在骨干关系中被破坏时,销毁相关模型的最佳方法是什么?

时间:2015-03-11 11:09:57

标签: javascript backbone.js backbone-relational

我有骨干关系模型的复杂嵌套结构。 每次我销毁模型时,都会期望关系中的所有模型都被破坏。 我该怎么做? Apparantely Backbone-Relational不会照顾它。

2 个答案:

答案 0 :(得分:3)

我更愿意重载自定义模型的Backbone模型destroy方法。所以你可以破坏你的嵌套模型。之后,您可以使用Backbone.Model.prototype.destroy.call(this)销毁模型;

示例:

var MyModel = Backbone.Model.extend({
  destroy: function(){
    var xhr = this.myNestedModel.destroy();
    xhr.always(_.bind(function(){
       Backbone.Model.prototype.destroy.call(this);
    },this));
    //or if you don't want to wait for the response without always
    //Backbone.Model.prototype.destroy.call(this);
  }
});

答案 1 :(得分:0)

重载destroy的另一种方法是使用事件来传播更改。确切的设置和复杂性取决于您定义的关系以及您如何创建和销毁模型。