Не существует шаблона сообщения для ключа ’emailAddressInvalidFormat’ zf2

Не существует шаблона сообщения для ключа emailAddressInvalidFormat-zf2 [zend-framework2].

Я использую следующий код, мой массив для фильтра

$this->add(array(
'name' => 'email',
'required' => true,
'filters' => array(
array('name' => 'StripTags'),
array('name' => 'StringTrim'),
),
'validators' => array(
array(
'name' => 'StringLength',
'options' => array(
'encoding' => 'UTF-8',
'min' => 1,
'max' => 256,
),
),
array(
'name' => 'DoctrineModule\Validator\ObjectExists',
'options' => array(
'object_repository' =>  $sm->get('doctrine.entitymanager.orm_default')->getRepository('Application\Entity\Customer'),
'fields' => 'email',
'messages'=>array(
\Zend\Validator\EmailAddress::INVALID_FORMAT  => "Invalid type given. String expected",
)
),
),
),

));

Но я получаю ошибку.

0

Решение

То, что вы делаете, не имеет особого смысла.
Попробуйте один раз, чтобы не устанавливать пользовательские сообщения. Просто опустите ключ сообщений полностью.

array(
'name' => 'DoctrineModule\Validator\ObjectExists',
'options' => array(
'object_repository' =>  $sm->get('doctrine.entitymanager.orm_default')->getRepository('Application\Entity\Customer'),
'fields' => 'email',
)
),

Это должно работать правильно, если вы делаете это. В настоящее время вы настраиваете ObjectExists валидатор с ключами EmailAddress валидатор, так что вы все путаете.

Если вы чувствуете необходимость настроить вещи, ключ сообщения должен быть noObjectFound или же \DoctrineModule\Validator\ObjectExists::ERROR_NO_OBJECT_FOUND;

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]