Backbone,按集合ID获取集合(不是RESTful)

red*_*ory 2 backbone.js

我有一个骨干集合,其中集合由一个带有id参数的URL(不是RESTful)获取

url: '/api/categories/?level=2&id=',
Run Code Online (Sandbox Code Playgroud)

所以id可能是

&id=2
Run Code Online (Sandbox Code Playgroud)

要么

&id=45
Run Code Online (Sandbox Code Playgroud)

我该怎么做呢?我一直在阅读不同的帖子,有些人说要覆盖Backbone Sync,其他人说只是做一个提取但修改数据参数......

nam*_*999 6

构造时Collection,传递idas参数(默认情况下,Collectiondo do时没有id属性Model).

然后,覆盖它的url属性Collection并传递一个函数:

MyCollection = Backbone.Collection.extend({

    initialize : function(models, options) {
        this.id = options.id;
    },

    model : // Your Model class

    url: function() {
        return '/api/categories/?id=' + this.id;
    }

});

// [] is the initial, empty set of models
var coll = new MyCollection([], { id: 45 });

coll.fetch(); // the correct url will be called
Run Code Online (Sandbox Code Playgroud)