Backbone.js 400 HTTP返回时未调用错误回调

Backbone.js 400 HTTP返回时未调用错误回调,backbone.js,Backbone.js,我有一个RESTful服务,当我试图保存一个新记录时,它会执行一个独特的电子邮件检查。当它失败时,我返回一个400错误代码和一条JSON消息,其中包含一个“errors”值 不幸的是,我在保存时的错误回调似乎没有触发。有什么建议吗 var nRecord = new RecordModel(values); nRecord.save({ wait: true, error: function(model,response){ console.log('error2

我有一个RESTful服务,当我试图保存一个新记录时,它会执行一个独特的电子邮件检查。当它失败时,我返回一个400错误代码和一条JSON消息,其中包含一个“errors”值

不幸的是,我在保存时的错误回调似乎没有触发。有什么建议吗

var nRecord = new RecordModel(values);
nRecord.save({
    wait: true,
    error: function(model,response){
        console.log('error2');
        obj.errorHandler(model,response);
    },
    success: function() {
        console.log('success2');
        obj.alert('Information saved!','Record Created!','success');

        // if there were no errors, clear the list
        $('#record-form :input').val('');
    }
});

控制台中从不显示“Error2”。想法?

您似乎将错误处理程序和其他选项作为模型属性传递,并保存到模型中。尝试将null作为第一个参数传递给save函数。希望这能让它起作用:)


我有这个问题,问题是我覆盖了模型中的同步。这意味着这些选项没有通过

completeCustomer.save(null, {
                wait: true,
                error: function(model,response){
                    console.log('error2');
                    //obj.errorHandler(model,response);
                    _.bind(this.handleError, this);
                },
                success: function() {
                    console.log('success2');
                    //_.bind(this.handleSuccess, this);
                }
            });

隐马尔可夫模型。。。我也有同样的问题,但是关于
fetch()
,而不是
save()
。此解决方案不适用于我(主干网0.9.2)。我尝试了使用
(originalModel,resp,options)
参数,如OneError回调的源代码中所示。我不明白…这个解决方案对我也不起作用。什么是公认的方法?
completeCustomer.save(null, {
                wait: true,
                error: function(model,response){
                    console.log('error2');
                    //obj.errorHandler(model,response);
                    _.bind(this.handleError, this);
                },
                success: function() {
                    console.log('success2');
                    //_.bind(this.handleSuccess, this);
                }
            });