繁体   English   中英

Symfony多个帖子验证器

[英]Symfony Multiple Post Validators

我正在使用Symfony 1.4并且使用多个表单验证器时遇到问题。

对于表单的一部分,我需要确保电子邮件地址有效且唯一。 这是我试图使用的代码:

$this->validatorSchema['email_address'] = new sfValidatorAnd(
    array(
        new sfValidatorEmail(),
        new sfValidatorPropelUnique(array('model' => 'Users', 'column' => 'email_address')
    ),

));

据我所知,这应该工作。 但是,当我发布表单时,我收到以下错误消息

您必须将数组参数传递给clean()方法(此验证程序只能用作后验证程序)。

任何想法或建议?

您只能使用唯一验证器作为post validator ,就像它说的那样。 这意味着您可以将其直接应用于字段 - 您需要通过mergePostValidator将其应用于架构。 在功能上,这将产生您正在寻找的相同结果 - 例如。 即使电子邮件有效,如果它已经存在,您将收到验证错误,但如果两者都通过则表单将有效。

$this->validatorSchema['email_address'] = new sfValidatorEmail();
$this->mergePostValidator(new sfValidatorPropelUnique(array('model' => 'Users', 'column' => 'email_address'));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM