我的骨干模型中有一个庞大的验证功能,只要我能检测到我正在测试的属性,就可以简化它。关于如何解决这个问题有一些想法,但它们都依赖于知道我正在测试的属性名称,而不像我在id
下面的变量中那样对其进行硬编码。
这是一个例子:
validate : function(attr){
var t = this;
if(attr.user1DobMonth && attr.user1DobMonth != t.get('user1DobMonth')){
var val = jQuery.trim(attr.user1DobMonth.toLowerCase()),
id = 'user1DobMonth',
error = {
attr : id
};
if(val === 'select'){
return error;
}
}
if(attr.user2DobMonth && attr.user2DobMonth != t.get('user2DobMonth')){
var val = jQuery.trim(attr.user2DobMonth.toLowerCase()),
id = 'user2DobMonth',
error = {
attr : id
};
if(val === 'select'){
return error;
}
}
}