Validierungsmethode im Backbone-Modell wird nicht aufgerufen?

Ich beginne Backbone zu lernen und versuche, eine einfache Überprüfung in meinem Personenmodell durchzuführen, aber die Überprüfungsmethode wird anscheinend nicht ausgeführt, wenn ich ein neues Alter einstelle. Kann mir jemand erklären, wo ich hier falsch liege? Ich möchte nicht weiter lernen, bis ich das richtig verstanden habe.

JS

var Person = Backbone.Model.extend({

    defaults: {
        name: 'John Doe',
        age: 30,
        occupation: 'working'
    },

    validate: function(attrs) {

        console.log(attrs);

        if ( attrs.age < 0 ) {
            return 'Age must be positive, stupid';
        }

        if ( ! attrs.name ) {
            return 'Every person must have a name, you fool.';
        }

    },

    work: function() {
        return this.get('name') + ' is working.';
    }

});

Momentan erhalte und setze ich nur Werte in der Konsole, also:

var person = new Person({
    name: 'Lady Madonna',
    age: 23
});

person.on('error', function(model, error){
    console.log(error);
});

Wenn ich das Alter auf einen negativen Wert einstelle, wird die Validierungsmethode nicht wirksam:

person.set('age', -55);

Antworten auf die Frage(3)

Ihre Antwort auf die Frage