0

以下のバックボーン モデルには、ネストされたバックボーン コレクションがあります。

var Student = Backbone.Model.extend({
    firstName: null,
    lastName: null,
    initialize: function() {
        this.programCollection = new ProgramCollection({});
    }
});

var ProgramCollection = Backbone.Collection.extend({ 
    model: Program
});

ただし、Programオブジェクトをコレクションに追加しようとすると...

var testStudent = new Student();
testStudent.get("programCollection").add(new Program());

次のエラーが表示されます。

プロパティ 'add' の値を取得できません: オブジェクトが null または未定義です

programCollection が定義されていないため、明らかに間違った方法でやっています。

4

1 に答える 1

0

モデル インスタンスの直接のプロパティは、プロパティと同じではありませんattributes。モデル インスタンスにコレクションを持たせたい場合は、その学生レコードにデータを直接保存する必要はありません。それをモデル インスタンス プロパティとして設定します (これまでと同様) get

var testStudent = new Student();
testStudent.programCollection.add(new Program());
于 2013-09-06T14:20:37.210 に答える