私はこれを動作させようとしていますが、私はそれに苦労しています。私のコレクションは、fetch
のsuccess
コールバックをチェックすると空になります。それはparse
の間に私に明確な誤りを与えません。ここに私のコードは次のとおりです。backbone.jsでいくつかのモデルタイプを持つコレクションを作成するには?
マイコレクション:
VOR.Collections.GridItems = Backbone.Collection.extend({
model : VOR.Models.GridItem,
url: "assets/data/grid.json",
parse: function(response){
var self = this;
_.each(response, function(griditem){
switch(griditem.type){
case "news":
self.add(new VOR.Models.NewsGridItem(griditem));
break;
default:
self.add(new VOR.Models.StandardGridItem(griditem));
break;
}
});
}
});
これは私がコレクションを作成する方法である:
griditems = new VOR.Collections.GridItems();
griditems.fetch({
error: function(e) {console.log(e);},
success: function(msg) {
console.log(msg)
});
私はmsg
をログコンソール私が手: オブジェクト{長さ= 0、モデル= [0]、_byId = {...}、more ...}
私はまた、parse
関数をコレクションに記録しました。これはJSONファイルを使って実行されます... any何がここで間違っているかもしれないかに関するアイデア? msg
オブジェクトの長さは5..i.eでなければなりません。これは関数ループの回数であり、モデルをコレクションに追加する必要があります。
感謝を!これはブートストラップされたデータのためにも 'parse'で行うよりもはるかに優れています。 – philoye
これはまさに私が探していたものです。ありがとう! –
私は最初の行は 'var VOR.Collections.GridItems = Backbone.Collection.extend({' – marcos82