2013-03-31 34 views
9

Im vừa bắt đầu từ xương sống.Backbone xác nhận không hoạt động

Tôi đã làm một ví dụ đơn giản bằng cách sử dụng VisualStudio2012. Tôi đã thêm xương sống.

trong main.js tôi

var Person = Backbone.Model.extend({ 
defaults: { 
    name: 'Mr Steel', 
    age: 26, 
    occupation: 'FrontEnd Web Developer' 
}, 

validate: function(attrs) { 
    if (attrs.age < 0) { 
     return 'Age must be a positive number.'; 
    } 
}, 

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

Nhưng khi tôi đi đến trình duyệt> console. Và gõ như sau trong .. xác nhận không thậm chí được kích hoạt.

var person = new Person(); 
person.get('age');//26 
person.set('age', -25);//sets -25 

Và nó đặt độ tuổi thành -25. lạ nhỉ!! Hãy giúp tôi.

Trả lời

20

Bạn phải vượt qua {validate:true} thông số để set phương pháp, ví dụ:

person.set('age', -25, {validate:true});

+0

công trình, byt tôi nhìn thấy trên video Whr doesnt persone đi {xác nhận: true} và nó vẫn hoạt động – STEEL

+7

@STEEL yeah, trong phương pháp phiên bản Backbone cũ 'set' gọi' phương pháp validate' tự động. Nhưng bây giờ việc xác thực bị vô hiệu hóa theo mặc định. –

Các vấn đề liên quan