Vla*_*Ria 6 validation symfony
如何将验证器添加到自定义表单类型?以 IBAN 为例。
use Symfony\Component\Validator\Constraints\IbanValidator;
class IBANType extends AbstractType
{
public function getName()
{
return 'iban';
}
public function getParent()
{
return 'text';
}
public function buildForm(FormBuilderInterface $builder, array $options)
{
//IbanValidator ???
}
}
Run Code Online (Sandbox Code Playgroud)
在这里他们建议使用监听器:
接口 FormValidatorInterface 已弃用,并将在 Symfony 2.3 中删除。
如果您使用此接口实现了自定义验证器,则可以通过侦听 FormEvents::POST_BIND(或任何其他 *BIND 事件)的事件侦听器来替换它们。如果您使用 CallbackValidator 类,现在应该将回调直接传递给 addEventListener。
但如何呢?
尝试这个:
use Symfony\Component\Validator\Constraints\IbanValidator;
class IBANType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->add('iban', 'text', [
'constraints' => [
new IbanValidator(),
],
]);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6725 次 |
| 最近记录: |