Share

Cómo agregar los parámetros get en la paginación en CakePHP versión 2.0

Planteamiento del problema

No existe una funcionalidad predeterminada para mantener los parámetros GET mientras se usa "Paginator"ayudante en CakePHP. Según la funcionalidad predeterminada de la ayuda paginatior de CakePHP, los parámetros GET se eliminarán de la URL si navega a la página siguiente.

Solución

Si enfrenta este problema, debe agregar algunas líneas de código en la función beforeRender. Esta función se define en el archivo paginator.php (Ubicación del archivo: cake \ libs \ view \ helpers \ paginator.php). Debe agregar las siguientes líneas que se muestran en color marrón:

public function beforeRender ($ viewFile) {$ this-> options ['url'] = array_merge ($ this-> request-> params ['pass'], $ this-> request-> params ['named']); // Inicio del código if (! Empty ($ this-> request-> query)) {$ get_param = $ this-> request-> query; unset ($ get_param ['url']); $ this-> options ['url'] ['?'] = $ get_param; } // Fin del código parent :: beforeRender ($ viewFile); }