Backbone Collection 型号错了

Backbone Collection got wrong Models

如何重写 Backbone Collection fetch() 函数以获取 JSON 中的特定部分?

我得到的 json 看起来像这样:

{
   "success":true,
    "data":[
      {
         "id":1,
         "title":"asdf",
         "link":"http://www.xx.cc/image/asdf/",
         "date":1439993443000
      },
      {
         "id":2,
         "title":"qwer",
         "link":"http://www.xx.cc/image/qwer/",
         "date":1439993091000
      }
   ]
}

还有我的简单 Backbone 脚本:

var myCollection = Backbone.Collection.extend({
    url: 'url.to/my/rest/'
});

myCollection.fetch();
console.log(myCollection);

这里的问题是,collection 我得到的长度为 1,其中有 1 个模型。当我记录 collection 并打开 "n -> models -> 0 -> attributes -> data" 时,我在 JSON 数据数组中找到了我所有的 objects。

但我需要 "data" 数组的 objects 作为我 collection 中的模型。到目前为止,我没有找到解决这个问题的方法,所以有人对我有正确的想法吗?

为您的集合描述对象提供 parse 函数,如 the docs:

中所述
var myCollection = Backbone.Collection.extend({
    url: 'url.to/my/rest/',
    parse: function(data) {
      return data.data;
    }
});

该方法从服务器的响应中提取相关部分,并根据该部分填充一个集合。