0
我終於放棄了。我一直努力讓這個工作,但沒有運氣。我只是有一個collection.create調用是這樣的:Backbone collection.create本地創建模型
var createData = {
full_name : full_name,
email : email,
role_id : role_id
};
var that = this;
app.collections.teamMembers.create(createData,{
wait: true,
success : function(){
log("in success")
},
error : function(a,b,c){
log("in error")
}
})
服務器是PHP,並將其返回結果是這樣的:
header('Content-type: application/json');
echo json_encode(array(
"data" => $data,
"meta" => $meta
));
在上面,在$數據實際上是數組(」 attr「=>」val「,...),這與該集合的模型如何定義完全匹配。
的問題是,因爲我並沒有直接返回一個JSON對象,類似於原來的模式,但使用命名空間(數據/元),我用model.parse在模型上是這樣的:
parse : function(response){
log(response, "inside model parse, this is the response from server")
return response.data;
},
問題:該模型不會在客戶端上創建。沒有'添加'事件被激發。我也在使用wait:true選項。
然而,該模型得到的地方,如果創建: - 我不用等待:真實 - 我用等待真正但是從服務器返回確切的JSON模式,沒有名字的間距。
我想要使用wait:true和namespacing。請幫助:(
此外,服務器的響應後,它進入成功回調 –
我沒有默認的散列模型,是必要的嗎? –
更新:我注意到的另一件事是.create方法確實返回一個有效的模型(我通過將它保存到窗口然後使用控制檯我讀取它的值來測試它)然而,新模型仍然沒有被插入!奇怪! –