我正在尝试填充模型内的嵌套集合,以及另一个集合内的最后一个模型。 代码如下
App.Models.Bed = Backbone.Model.extend();
App.Collections.Beds = Backbone.Collection.extend({
model: App.Models.Bed,
initialize: function(models, options){
this.room = options.room;
}
});
App.Models.Room = Backbone.Model.extend();
App.Collections.Room = Backbone.Collection.extend({
url: 'rooms/',
initialize: function(){
this.on('reset', this.getBeds, this);
},
getBeds: function(){
this.each(function( room ){
room.beds = new App.Collections.Beds([], { room: room});
room.beds.url = 'rooms/' + room.id + '/beds';
room.beds.fetch();
console.log(room.beds.toJSON());
});
}
});
现在,如果我执行:
var rooms = new App.Collections.Room();
rooms.fetch();
rooms.toJSON();
它只返回已填充的房间,但没有返回每张床上的床位属性。 有线的事情是它向位于/rooms/1/beds 的服务器发出请求,然后我返回每张床。
它会填充床集合吗? 我做错了什么吗?
感谢您的时间伙伴。
最佳答案
看起来您需要将 Room Model
传递给 Room Collections
。
关于javascript - 主干嵌套集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14740526/