Imagine a simple backbone model like
window.model= Backbone.Model.extend({
defaults:{
name: \"\",
date: new Date().valueOf()
}
})
It would be a hack, because this isn't what it was made for, but you could always use a validator for this:
window.model= Backbone.Model.extend({
validate: function(attrs) {
if(attrs.name) {
attrs.name = attrs.name.toLowerCase()
}
return true;
}
})
The validate function will get called (as long as the silent
option isn't set) before the value is set in the model, so it gives you a chance to mutate the data before it gets really set.