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.

Responder a