1

API im 使用处理集合的方式如下。让我们称之为用户:

  1. /users 返回一组用户 ID。然后要获得实际用户,您可以:
  2. /用户身份

填充集合的最具战略意义的方法是什么?

我正在考虑将集合 url 设置为 /users ,然后在 parse 方法中调用 /user/id 。

4

2 回答 2

0

我认为您对使用该parse方法有正确的想法:

var User = Backbone.Model.extend({
    urlRoot: '/user',
    // idAttribute: 'id', // This is the default
    initialize: function() {
        // If you need the info right away, do this
        // Otherwise I would probably just fetch when necessary
        this.fetch();
    }
});
var Users = Backbone.Collection.extend({
   model : User,
   url : '/users',
   parse: function(response) {
       // Assuming the response is just an array like [1,2,3,4]
       return _.map(response, function(id) { return { id: id }; });
   }
});

var users = new Users();
users.fetch();
于 2013-08-08T18:00:07.907 回答
0

您通常会有一个与Collection关联的模型

Var User = Backbone.Model.extend({
     idAttribute : 'id'
});

var Users = Backbone.Collection.extend({
     model : User,
     url : '/users'
});

var user = new User();
var users = new Users();

因此,如果您想获取用户列表。你会做一个 collections.fetch();

users.fetch();  // in this case

同样,如果您想根据用户获取单个id用户。

您可以在模型urlRoot上设置属性

 Var User = Backbone.Model.extend({
     idAttribute : 'id',
     urlRoot : '/user'
 });
 var user = new User();
 user.fecth()

默认情况下,id将是发出请求时附加到 url 的最后一个参数。

于 2013-08-08T17:45:09.800 回答