Píldora – Usar paginación con varios modelos en cakephp.

 

cakePhp

A veces en cakePhp nos encontramos con que queremos usar varios modelos en un mismo controlador, y paginar los modelos.
y como es algo que me ha surgido varias veces, y siempre me tengo que para a pensar, lo dejo colgado en el blog, como una pequeña píldora.

Decimos que queremos usar dos modelos.

public $uses = array( 'User', 'Profile');

En lo que siempre fallo es que pongo $this->paginate(); pero si hay varios modelos tengo que decir que modelo quiero paginar, sino por defecto siempre será el primero en la array $uses.

un ejemplo:

public function Profile() {
		$this->Profile->recursive = -1;
		$this->set('profile', $this->paginate('Profile'));
}
  • Juan Pablo Melnik

    Muchas Gracias! 

  • Anonymous

    De nada! son apuntes para no olvidarme de esos detalles, si encima le sirven alguien mucho mejor.

  • Tonino

    Merci! 🙂

  • De nada

  • lugorcorp

    Me ayudaste mucho, era tan fácil usar varias tablas.

  • deldan

    De nada!

  • Nicolas Hernandez

    Una pregunta sobre la paginación.. cuando yo busco por filtro, por ejemplo “n” me muestra 2 paginas.. al pasar a la segunda, el filtro se elimina y me muestra todos los resultados, como puedo modificar esa parte. Slds.

  • Edson

    Millon de gracias!!!! me rompi el coco pensandolo hata q llegue a esta valiosa pildora, gracias de veras éxitos

  • Dan El Chalbzouri

    Imagino que tienes dos modelos páginados en la misma vista, tanto en el el filtro como en la paginación, tienes que dejar claro a que modelo se trata $this->Paginator->sort(‘Modelid’);

  • Dan El Chalbzouri

    De nada!