0

我正在创建我的第一个主干应用程序。它只是一个团队及其球员的列表。我可以显示团队列表。但是我在展示那支球队的球员时遇到了问题。

我的播放器模型如下:

定义(功能(要求){

"use strict";

var $                   = require('jquery'),
    Backbone            = require('backbone'),


    Player = Backbone.Model.extend({

        urlRoot: "player",

        initialize: function () {
            this.players = new PlayerCollection();
            this.players.url = this.url + "/" + this.team_id;
        }  

    }),

    PlayerCollection = Backbone.Collection.extend({

        model: Player,
        url: "team_players",

    });

return {
    Player: Player,
    PlayerCollection: PlayerCollection
};

});

所以 PlayerCollection 是基于 team_id 的玩家集合。

在路由器中,我有:

            var playerList = new models.PlayerCollection({team_id: team_id});
            playerList.fetch();

但是当我希望 URL 为“ http://mydomain.com/api/team_players/1 ”(其中 1 是团队 ID)时,发送的 GET URL 是“ http://mydomain.com/api/team_players ”。那么如何根据 team_id 获取集合呢?

4

1 回答 1

0

尝试这个 :

PlayerCollection = Backbone.Collection.extend({

    model: Player,
    url: function(){
       return "team_players/" + this.team_id;
    }

});

//像这样使用它

 var playerList = new models.PlayerCollection();
 playerList.team_id = team_id;
 playerList.fetch();
于 2013-07-29T15:58:23.003 回答