У меня есть функция, которая присваивает документу номер, если два обязательных поля заполнены Вот код контроллера:.
if(($data['Msr']['app_requester_id'] == 0 && isset($data['Msr']['app_requester_date']) ||
(empty($data['Msr']['app_requester_date'] && $data['Msr']['app_requester_id'] > 0)))) {
$this->Session->setFlash(__('You must sign and date this document before a number can be assigned.'));
$this->redirect(array('action'=>'edit', $id));
}
Это работает отлично, пока присутствует $ this-> redirect. Дело в том, что я не хочу перенаправлять пользователя, потому что тогда они потеряют любые несохраненные изменения, если это условие ошибки встречается. Но если я удалю $ this-> redirect, это не сработает, и число будет присвоено, даже если одно или оба обязательных поля пустые. Есть ли способ заставить это работать без перенаправления?
Также: всегда возвращайте свою переадресацию. Ты забыл это здесь. – mark
@mark Почему добавление 'return' для' redirect', если по умолчанию оно выдает 'exit (0)' в конце! Я ошибаюсь ? –