недействительные валидаторы в Symfony - sfForkedApplyPlugin - PullRequest
1 голос
/ 23 сентября 2011
    public function configure()
        {
            parent::configure();

            $email = $this->getWidget('email');
            $class = get_class($email);
            $this->setWidget('email2', 
                    new $class( array(), array('maxlength' =>

$ email-> getAttribute ('maxlength')) )); $ this-> widgetSchema-> moveField ('email2', sfWidgetFormSchema :: AFTER, 'email');

$ this-> widgetSchema-> setNameFormat ( 'sfApplyApply [% s]'); $ This-> widgetSchema-> setFormFormatterName ( 'список');

            $this->setValidator('email', new sfValidatorAnd(

массив ( new sfValidatorEmail (array ('required' => true, 'trim' => true)), new sfValidatorString (array ('required' => true, 'max_length' => 80)), новый sfValidatorDoctrineUnique ( массив ('model' => 'sfGuardUserProfile', 'column' => 'email'), array ('invalid' => 'Учетная запись с этим Адрес электронной почты уже существует. Если вы забыли свой пароль, нажмите «Отмена», затем «Сбросить мой пароль».)) )));

            $this->setValidator('email2', new sfValidatorEmail( 
                    array( 'required' => true, 'trim' => true )));

            $schema = $this->validatorSchema;

            // Hey Fabien, adding more postvalidators is kinda

многословный! $ postValidator = $ schema-> getPostValidator ();

            $postValidators = array( 
                new sfValidatorSchemaCompare( 'password',

sfValidatorSchemaCompare :: EQUAL, 'password2', array (), array ('invalid' => «Пароли не совпадают.»), новый sfValidatorSchemaCompare ('электронная почта', sfValidatorSchemaCompare :: EQUAL, 'email2', array (), array ('invalid' => 'The адреса электронной почты не совпадают. ')));

            if( $postValidator )
            {
                $postValidators[] = $postValidator;
            }

            $this->validatorSchema->setPostValidator( new

sfValidatorAnd ($ postValidators)); } }

почему, если в базе данных есть другой пользователь с тем же адресом электронной почты, то у меня есть две ошибки - первая с этой информацией, а вторая - электронные письма не совпадают.

как я могу это исправить?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...