Me pregunto si es posible usar el flash messenger sin redirigir? p.ej. Después de un inicio de sesión fallido, quiero seguir mostrando el formulario, no se requiere redirección.Posible usar FlashMessenger sin redirigir?
public function loginAction() {
$form = new Application_Form_Login();
...
if ($this->getRequest()->isPost() && $form->isValid($this->getRequest()->getParams())) {
$authAdapter = new Application_Auth_Adapter($form->getValue('username'), $form->getValue('password'));
if ($this->auth->authenticate($authAdapter)->isValid()) {
...
} else {
// login failed
$this->flashMessenger->addMessage('Login failed. You may have entered an invalid username and/or password. Try again');
}
}
$this->view->form = $form;
}
En realidad, ni siquiera tiene que usar FMer en absoluto. Simplemente puede escribir $ this-> view-> messages = array ('mi mensaje', 'mi mensaje 2'); –
¿No hay forma de 'setCurrentMessages()'? No quiero mostrar siempre todos los mensajes. –
Los mensajes se agregan solo por la función addMessage(). La diferencia entre getMessages() y getCurrentMessages() es que el primero se utiliza para obtener mensajes que se guardaron en la página anterior antes de redirigir y este último puede recuperar los mensajes que se establecieron durante el procesamiento de la página actual. – ischenkodv