我有一个 JSON 文件,它将创建我ParentModel
的以及填充子集合Records
。
ParentModel : Backbone.Model.extend({
initialize: function() {
this.set({ records: new Records(this.get("records")) });
}
});
Records 集合只是映射到 Record 模型的基本 Backbone 集合。
问题是我需要孩子知道父母,所以每个Record
模型都必须有一个父属性。所以现在我刚刚将它添加到初始化方法的底部:
var self = this;
this.get("records").each(function(record) {
record.set("parent", self);
});
这很好用,但是当我创建新记录时,我宁愿不必记住包含这 4 行。
这个答案说我可以重写初始化方法以接受额外的参数,但我不太确定如何让 Backbone 自动将 ParentModel 传递给重写的初始化方法。谁能提供一个如何做到这一点的例子?
我听说过Backbone-relational可能有助于做我想做的事,但这是另外 23kb 的内容。如果这是更好的方法,我会考虑实现它,但如果有可用的解决方案,我更喜欢更简单的解决方案。
ParentModel
无论我是通过代码创建新记录,还是它是由 JSON 提要自动创建的,这都需要工作。