Backbone model.save()不调用错误或成功callback

我试图更新数据库中的logging,所以我正在定义与数据模型和调用.save()方法。 PUT请求被触发并且数据库条目被更新。 问题不是成功或错误callback被称为。 可能是什么原因?

sessionsModel.save({ error: function() { alert('test'); }, success: function () { alert('test'); } }); 

编辑:请求返回JSON对象

刚发现问题解决的类似问题。 你必须把东西作为第一个参数(我把null,因为我的模型已经显式填充数据)和对象的callback第二。 所以有点像

 sessionsModel.save(null, {success:function() {} }); 

在search的时候,我首先登陆了这个对我不起作用的SO线程 ,但似乎为其他工作,后来我碰到这个链接 ,其中有一个尝试null而不是{}作为第一个参数。

 this.model.save(null, { success: function (model, response) { console.log("success"); }, error: function (model, response) { console.log("error"); } }); 

所以,这为我工作。 希望这也能帮助你。

您的服务器必须返回一个JSON对象。 如果响应不是JSON对象,则callback将不会触发。 检查此解决schemehttps://stackoverflow.com/a/22176044/1579718

我遇到了这个问题 – 但是很挣扎,因为我的服务器正在响应一个有效的JSON对象(模型),我已经在保存调用中使用了null

正如我(最终)发现,在成功callback被触发之前,返回的模型将通过validate方法传递。 在我的情况下,我有一个(显而易见,当你在正确的地方)的问题,导致返回的模型被视为无效,随后防止成功callback。

虽然我很欣赏这不会帮助OP,但我希望这可以帮助其他人解决同样的问题。