2012-12-17 259 views
0

填充骨幹模型我有一個模型叫用戶,當我做了提取,將理想期望得到一個JSON對象,看起來像這樣:嵌套對象

{"UserId":"20","FirstName":"Test","SurName":"User"} 

但是回來的對象,而且,我需要的工作,看起來是這樣的:

{ 
    "Type": "Single", 
    "Error: "", 
    "Objects": { 
     "UserId":"20", 
     "FirstName":"Test", 
     "SurName":"User" 
    } 
} 

這可能是所有在我的應用程序模型的真實。

告訴模型從Objects對象而不是根對象填充自己的最佳方式是什麼?

道歉,如果我的問題不盡如人意:我是骨幹處女,這對我來說都是新的。

回答

2

您需要覆蓋模型的parse方法。

var FooModel = Backbone.Model.extend({ 
    parse: function(response) { 
     //response is the raw JSON object. Whatever this method returns is used to populate the model. 
     return response.Objects; 
    } 
}); 

請參閱Backbone documentation for Model.parse

+0

如果所有模型都需要,也可以重寫Backbone.Model.prototype.parse。 – nikoshr

+1

@nikoshr或定義你自己的'ModelBase'(或類似的),它重寫解析,並從中擴展你的模型。運行時猴子補丁會導致我失眠。 – jevakallio

+0

謝謝你們,這解決了我的問題。非常感激。 – user1910459