2014-09-04 28 views
-1

我需要使用型號ID從COLLECTION.create呼叫重定向用戶做新的一頁如何從collection.create調用中獲取model.id?

window.href = 'https://example.com/document/' + model.id 

我不在乎,如果AJAX調用REST API是異步或同步(如果該事項)。我希望我能做這樣的事情:

var OPTS ={} 
OPTS['success'] = function(response, model, options){ 
       model.id 
} 

SOMECOLLECTION.create(json_attributes,OPTS) 

但這並不行。我正在使用Django-Tastypie作爲我的REST API。

+0

爲什麼這是downvoted? – josephmisiti 2014-09-06 23:23:53

回答

1

這應該工作

var MyCollection = Backbone.Collection.extend({ 
    url: '/echo/json/' 
}); 

var my_collection = new MyCollection(); 

var model = my_collection.create({ name: "Eugene", age: 31 }, { 

    success: function(response, model) { 
     console.log(model.id); 
     // id: 123 
    } 

}); 

console.log(model.id); 
// id: undefined 

我創建工作示例這裏http://jsfiddle.net/6wup7q9e/3/

請檢查您的網絡選項卡,看到你從你的REST API有什麼反應,它應該有和你json_response和新id屬性這將被用作模型ID。在我的情況下,它會是這樣的:

{ 
    id: 123, 
    name: "Eugene", 
    age: 31 
} 
相關問題