我需要使用COLLECTION.create调用中的模型ID来重定向用户以执行新页面
window.href = 'https://example.com/document/' + model.id
我不关心对其余api的ajax调用是异步还是同步(如果这很重要)。我希望我能做到这样的事情:
var OPTS ={}
OPTS['success'] = function( response, model, options ){
model.id
}
SOMECOLLECTION.create(json_attributes,OPTS)
但这不起作用。我使用Django-Tastypie作为我的REST API。
答案 0 :(得分: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
}