Приостановить проверку файла в Zend Framework - PullRequest
0 голосов
/ 19 апреля 2010

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

В этом сценарии остается только приостановить проверку файла, если файл не включен. В настоящее время я получаю ошибку self :: NO_FILE из класса Zend_Validate_File_Upload .

Есть ли способ приостановить проверку, чтобы ничего не проверялось, если файл не был предоставлен?

1 Ответ

0 голосов
/ 19 апреля 2010

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

$form->isValid( // ...

Если это так, вы можете проверить, какая ошибка была возвращена при неудачной проверке, с помощью метода Zend_Form getErrors(). Если это NO_FILE, перенаправьте действие в действие по сбросу логотипа.

Лично я бы нашел специальную кнопку для удаления логотипа, хотя лучший выбор.

...