2

次のような外部 URL を持つコレクションを作成しています。

var todoCollection = Backbone.Collection.extend({
    model: Todo

    url: function() {
        return "http:externalurl.com";
    },

    parse: function(dat) {
        return dat.obj.data;
    }
});
return new todosCollection;​

私のモデルは次のようになります。

var TodoModel = Backbone.Model.extend({
    initialize: function() {}
});
return TodoModel;​

ここで、私の見解では、コレクションを次のように使用します。

$.each(this.collection.models,function(i,model){
      console.log(model);
})

問題は、モデルが TodoModel タイプとして設定されていないことです。それらは単純なオブジェクト型です。ここでどこが間違っているのかを教えてくれる人はいますか?

ありがとうございました。

4

2 に答える 2

1

私はあなたが正しいとは思わない。console.logオブジェクトであると言うかもしれませんが、ほぼ確実にモデルのインスタンスです。また、例のコードが実際のコードである場合はeach、後方パラメーターを使用して関数を使用していて、使用Todoすべき場所を使用しているため、コードが壊れていますTodoModel

this.collection.each(function (model) {
  console.log(model instanceof TodoModel);
});
于 2012-12-03T21:20:01.433 に答える
1

タイプミスがあるだけだと思います。model: Todoする必要がありますmodel: TodoModel

于 2012-12-05T16:51:05.067 に答える