ParentModel
子コレクションを作成するだけでなく、子コレクションを作成する JSON ファイルがあります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 行を含めることを覚えておく必要はありません。
This answerは、初期化メソッドをオーバーライドして追加のパラメーターを受け取ることができると言っていますが、BackboneがParentModelをオーバーライドされた初期化メソッドに自動的に渡す方法がよくわかりません。誰かがそれを行う方法の例を提供できますか?
私が望むことを行うのに役立つかもしれないバックボーンリレーショナルについて聞いたことがありますが、それは別の23kbを含める必要があります. それがより良い方法である場合は、それを実装することを検討しますが、それ以外の場合は、利用可能な場合はより単純なソリューションを希望します.
これは、コードを使用して新しいParentModel
レコードを作成する場合でも、JSON フィードによって自動的に作成される場合でも機能する必要があります。