在下面的Backbone模型中,我有一个嵌套的Backbone集合。
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'的值:object为null或undefined
显然,由于programCollection未定义,我正在做错事。
提前致谢/ Jesper
答案 0 :(得分:0)
模型实例的属性直接与attributes
属性不同。如果您希望模型实例具有一个集合(不是直接存储在该学生记录中的数据),请将其设置为模型实例属性(正如您所做),然后直接访问它而不调用get
var testStudent = new Student();
testStudent.programCollection.add(new Program());