Проверка CakePHP для нескольких электронных писем, разделенных запятой

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

Основная проблема, с которой я сталкиваюсь, заключается в том, что CakePHP (v2.3), кажется, автоматически проверяет любое поле с именем электронной почты. Я пытался просто отключить это для этого отдельного поля, для этой страницы и для конкретной модели, но ни один из них не работает.

Мое представление имеет следующее:

echo $this->Form->input('email',array('novalidate' => true));

Я пробовал это в своем контроллере:

$this->Org->validator()->remove('email');

И я также пробовал в модели следующее:

public $validate = array(
    'email' => false
);

Я уверен, что просто снять валидацию должно быть просто?

Я заметил, что я получаю атрибут на входе, чтобы сказать, что проверка не выполняется, но это, очевидно, игнорируется, поскольку оно все еще проверяет поле:

<input id="OrgEmail" type="email" value="" maxlength="255" novalidate="novalidate" name="data[Org][email]">

person Michael Wilson    schedule 21.11.2013    source источник


Ответы (1)


проверка выполняется на стороне клиента современными браузерами

пытаться

echo $this->Form->input('email',array('novalidate' => true, 'type' => 'text'));

вы также можете указать несколько значений, разделенных запятыми, если вы все еще хотите использовать тип ввода электронной почты html5

echo $this->Form->input('email',array('novalidate' => true, 'multiple' => 'multiple'));

http://www.w3.org/TR/html-markup/input.email.html

person arilia    schedule 21.11.2013