我尝试将 rails-api (同一主机)的记录获取到我的骨干集合中。我有以下代码:
// Models
App.GeeksModel = Backbone.Model.extend({
urlRoot: "/geeks",
idAttribute: "id"
});
// Collections
App.GeeksCollection = Backbone.Collection.extend({
url: "/geeks",
model: App.GeeksModel
});
在我的路由器中,我有以下内容
// Router
App.GeekRouter = Backbone.Router.extend({
routes: {
"": "index"
},
initialize: function() {
console.log("router - init");
},
index: function() {
console.log("route - index");
var geekCollection = new App.GeeksCollection();
var mapView = new App.GeeksMapView({ el: $("#foo"), model: geekCollection });
geekCollection.fetch();
}
});
浏览 url 时,视图正确加载,并且在我看到的服务器上,从数据库中获取了一个条目。但是一旦我在我的视图中检查模型长度,就使用
this.model.length
该系列是空的...对此有什么建议吗?
谢谢
编辑1:
将索引路由器方法更改为
var mapView = new App.GeeksMapView({ el: $("#map"), collection: geekCollection });
例如检查视图初始化方法中的集合长度
...
initialize: function() {
this.render();
console.log(this.collection.length);
},
...
它也重新调整了 0 ......所以没有任何改变!