我有一个非常简单的模型叫做#34; gameModel"和一个集合" gamesCollection"如下所示。当我尝试在集合中创建一个新游戏时,它会向服务器发送一个帖子,但该帖子中没有数据。有谁知道发生了什么?
//The relevant code
var game = new gameModel();
game.gameId = id;
gamesCollection.create(game);
...........
//The Collection
define([
'jQuery',
'Underscore',
'Backbone',
'collections/common/mixin',
'models/game',
'config/restresource'
], function($, _, Backbone, collectionMixin, gameModel, restDomain){
var gamesCollection = Backbone.Collection.extend({
url: (new restDomain()).getGamesRoot(),
model: gameModel,
initialize: function(){
_.extend(this.__proto__, collectionMixin);
},
parse: function(resp, xhr) {
var games = [];
for(i=0;i<resp.length;i++){
games.push(new gameModel({gameId: resp[i].gameId}));
}
return games;
},
});
return new gamesCollection;
});
答案 0 :(得分:1)
试试这个
gamesCollection.create({"id":id});
Backbone.Collection.create
接受属性作为第一个参数,不模型...如果模型成功创建,则返回模型。因此,如果您仍希望使用game
模型对象,则可能需要像下面这样实现它。
var game = gamesCollection.create({"id":id});