2

RESTful API には Tastypie を、フロント エンドには Backbonejs を使用しています。fetchwith モデルは問題なく動作しますが、withではBackbone.Collection間違った応答が返されるようです:

_byCid: Object
  _byId: Object
  _callbacks: Object
  _onModelEvent: function () { [native code] }
  _removeReference: function () { [native code] }
  length: 1
  models: Array[1]
       0: d
       _callbacks: Object
       _changed: false
       _changing: false
       _escapedAttributes: Object
       _previousAttributes: Object
       attributes: Object
           cid: "c14"
           collection: d
               __proto__: o
               length: 1
               __proto__: Array[0]
               __proto__: o

ここに私のコレクションがあります:

define(
[
    'models/ad',
],
function(AdModel){
    return Backbone.Collection.extend({
        url: '/api/v1/ad',
        model: AdModel,

        initialize: function(){
            this.fetch({
                success: function(coll, resp){
                    console.log(coll);
                }
            });
        }
    });
}

);

そして、ここに私のモデルがあります:

   define(
[],
function(){
    return Backbone.Model.extend({

    });
}

);

4

1 に答える 1

1

私が変えなければならなかったのは私のCollection.parse方法だけでした。

define(
   [
     'models/ad',
   ],
function(AdModel){
   return Backbone.Collection.extend({
      url: '/api/v1/ad',
      model: AdModel,
      parse: function(data){
          return data.objects;
      },
      initialize: function(){
        this.fetch({
            success: function(coll, resp){
                console.log(coll);
            }
        });
    }
  });
}

そしてすべてがうまくいきました。

于 2012-07-16T11:44:06.453 に答える