我正在尝试对复杂类型中存在的数据属性进行验证,如果我将验证器添加为普通数据属性,则它不会运行验证。下面显示的是样本breeze模式和使用的复杂类型。
Breeze Schema:
{
"name": "mailingAddress",
"complexTypeName": "Address:#test"
}
复杂类型:(Address.json)
{
"name": "address",
"dataType": "String",
"validators": [
{
"name": "required"
}
]
}
页面加载期间未运行所需的Validator。此外,当数据属性更改时,预定义/自定义验证程序不会触发。
是否有任何特定方法可以对复杂类型(单个和对象数组)进行验证?
请帮助对复杂类型进行验证。
谢谢, 迪内希
答案 0 :(得分:0)
实际上,'要求'验证器可能确实运行了。问题是标量复杂类型永远不会为空;它们可能包含所有空值,但复杂实例本身始终存在。所以'要求'验证器,它只是询问属性是否为null,永远不会失败。类似地,对于complexTypes数组,数组将始终存在,但它可能为空(而不是null)。
因此,您需要为实例创建一个复杂的验证器,以检查complexType中的所有值是否为null。
对于complexTypes数组,您需要检查数组是否为空。
希望这是有道理的。