Ok ahorita muestra el mensaje pero no guarda nada en la BD y si estoy
trabajando con la version 2.0.5 de CakePHP, como hago para personalizar
donde se muestra el mensaje Flash? Puedo hacer esto:
$this->Session->flash('flash',
array('class' => 'alert alert-block')); ??Saludos Ing. Reynier Pérez Mira http://reynierpm.site90.com/ 2012/2/23 Sebastian Maydana <[email protected]> > Hola prueba con el siguiente codigo, por lo que veo trabajas con la > version 2.0 de cake. > > class CountriesController extends AppController { > public $name = 'Countries'; > public $helpers = array("Html", "Form", "Session"); > public $components = array("Session"); > > /** > * Index function executed when controller is called > */ > public function index() { > $list = $this->Country->find('all'); > $this->set('country', $list); > } > > /** > * Function to add new country > */ > public function add() { > if ($this->data) { > if ($this->Country->save($this->data)) { > $this->Session->setFlash(__("The country has been saved")); > $this->redirect(array("action" => "index")); > } else { > $this->Session->setFlash(__("Unable to save the country")); > } > } > } > > Entonces en el template coloca lo siguiente: > > <?php echo $this->Session->flash(); ?> > > Saludos. > > El 23 de febrero de 2012 12:29, [email protected] > <[email protected]>escribió: > > Ok, he cambiado el codigo y me ha quedado de la siguiente forma: >> >> class CountriesController extends AppController { >> public $name = 'Countries'; >> public $helpers = array("Html", "Form", "Session"); >> public $components = array("Session"); >> >> /** >> * Index function executed when controller is called >> */ >> public function index() { >> $list = $this->Country->find('all'); >> $this->set('country', $list); >> } >> >> /** >> * Function to add new country >> */ >> public function add() { >> if ($this->request->is("post")) { >> if ($this->Country->save($this->request->data)) { >> $this->Session->setFlash(__("The country has been saved")); >> $this->redirect(array("action" => "index")); >> } else { >> $this->Session->setFlash(__("Unable to save the country")); >> } >> } >> } >> >> Entonces en mi template he colocado lo siguiente: >> >> <?php >> if($this->Session->flash()) { >> echo $this->Session->flash('flash', array('class' => 'alert >> alert-block')); >> } >> ?> >> >> Pero no me muestra nada y lo otro es que no me esta salvando los datos en >> la BD (no se si abrir otro hilo para esto ultimo) >> Que hago mal? >> >> Ing. Reynier Pérez Mira >> http://reynierpm.site90.com/ >> >> >> >> 2012/2/23 Sebastian Maydana <[email protected]> >> >>> Hola el problema es que la palabra session esta escrita con minuscula y >>> la primer letra es en mayusculas. >>> Intenta con $this->Session->setFlash(__("The country has been saved")); >>> y en componentes y helpers agrega "Session". >>> >>> Un saludo. >>> Sebastian >>> >>> El 23 de febrero de 2012 11:46, [email protected] <[email protected] >>> > escribió: >>> >>>> Hola a todos nuevamente: >>>> Tengo esta funcion >>>> >>>> public function add() { >>>> if ($this->request->is("post")) { >>>> if ($this->Country->save($this->request->data)) { >>>> $this->session->setFlash(__("The country has been saved")); >>>> $this->redirect(array("action" => "index")); >>>> } else { >>>> $this->session->setFlash(__("Unable to save the country")); >>>> } >>>> } >>>> } >>>> >>>> Pero cuando la ejecuto me lanza este error: "Fatal error: Call to a >>>> member function setFlash() on a non-object in >>>> /var/www/html/jobapp/app/Controller/countries_controller.php on line 21" >>>> alguna ayuda con esto? Que estoy haciendo mal? >>>> Saludos y gracias desde ya >>>> Ing. Reynier Pérez Mira >>>> http://reynierpm.site90.com/ >>>> >>>> -- >>>> Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" >>>> de Grupos de Google. >>>> Para publicar una entrada en este grupo, envía un correo electrónico a >>>> [email protected]. >>>> Para anular tu suscripción a este grupo, envía un correo electrónico a >>>> [email protected] >>>> Para tener acceso a más opciones, visita el grupo en >>>> http://groups.google.com/group/cakephp-es?hl=es. >>> >>> >>> -- >>> Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de >>> Grupos de Google. >>> Para publicar una entrada en este grupo, envía un correo electrónico a >>> [email protected]. >>> Para anular tu suscripción a este grupo, envía un correo electrónico a >>> [email protected] >>> Para tener acceso a más opciones, visita el grupo en >>> http://groups.google.com/group/cakephp-es?hl=es. >>> >> >> -- >> Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de >> Grupos de Google. >> Para publicar una entrada en este grupo, envía un correo electrónico a >> [email protected]. >> Para anular tu suscripción a este grupo, envía un correo electrónico a >> [email protected] >> Para tener acceso a más opciones, visita el grupo en >> http://groups.google.com/group/cakephp-es?hl=es. >> > -- > Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de > Grupos de Google. > Para publicar una entrada en este grupo, envía un correo electrónico a > [email protected]. > Para anular tu suscripción a este grupo, envía un correo electrónico a > [email protected] > Para tener acceso a más opciones, visita el grupo en > http://groups.google.com/group/cakephp-es?hl=es. > -- Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de Grupos de Google. Para publicar una entrada en este grupo, envía un correo electrónico a [email protected]. Para anular tu suscripción a este grupo, envía un correo electrónico a [email protected] Para tener acceso a más opciones, visita el grupo en http://groups.google.com/group/cakephp-es?hl=es.
