Doctrine实体在其成员字段上指定了独立于表单的验证元数据。 Symfony2的表单系统以某种方式使用实体提供的验证器。
这是如何运作的?是什么将它们联系在一起?
我有一个非教义模型,我想验证没有表单,但是当我使用表单时,他们应该使用该验证信息并正确显示它。所以我需要:
答案 0 :(得分:1)
不确定它是否处理您的情况(因为没有提供非doctrine实体的代码),但您可以对值和值数组使用symfony验证约束:
作为验证数组中几个日期值的示例:
private function isInvalid($data)
{
$response = array();
$constraint = new Collection(array(
'from'=>new Date(),
'to'=>new Date(),
));
$validationList = $this->get('validator')->validateValue($data, $constraint);
if(count($validationList)>0) {
foreach($validationList as $err) {
array_push($data,array(
'field'=>$err->getPropertyPath(),
'message'=>$err->getMessage(),
));
}
return $response;
}
return false;
}