Te adjunto un buscador generico, tenes que tomar una variable de session
para que el paginator funcione despues de pagina uno, tendrias que cambiar
un poco las variables y esas cosas para qeu funcione con cake 2, pero nada
de otro mundo:

     function search(){
         //$this->layout = 'sistema'; -> Ac� va el layout que quieras
usar!!
         $this->autoRender = false;
         if(!empty($this->data)){
             $this->Session->write('Buscar',
$this->data[$this->modelClass]['Buscar']);
             $this->Session->write('Accion', $this->referer());
         }
         $search = $this->Session->read('Buscar');
         $cond ="";
         $i=0;
         foreach($this->{$this->modelClass}->_schema as $field => $value){
             //debug($field);
             if($i>0){
                 $cond = $cond. " OR ";
             }
             $cond = $cond. " ".$this->modelClass.".".$field." LIKE
'%".$search."%' ";
             $i++;
         }
         $conditions = array('limit'=> 10, 'conditions' => $cond);
         $this->paginate = $conditions;
         $this->set(strtolower($this->name), $this->paginate());
         $this->render('index');
     }

     function restablecer_search() {
         $this->Session->write('Buscar', '');
         $accion = $this->Session->read('Accion');
         $this->Session->write('Accion', '');
         if ($accion != '') {
             $this->redirect($accion);
         } else {
             $this->redirect($this->referer());
         }
     }

//Esto lo reemplazas por el texto que dice Viendo tantas paginas de bla
bla bla
<p>
<?php
                 echo $form->create('', array('action'=>'search',
'style' => 'margin: 0 0 0 25px;'));
                 echo $form->input('Buscar', array('type'=>'text'));
                 echo $this->Html->link('Restablecer', array('action' =>
'restablecer_search'));
                 echo $form->end('Buscar');
                 ?>
</p>

Saludos!!!



El 22 de abril de 2013 14:30, Miguel Leugim <[email protected]> escribió:

> Hola
> mira esto
>
> http://mrphp.com.au/blog/search-forms-cakephp
>
> saludos
>
>
> El 22 de abril de 2013 08:00, Sebastian Andrade <[email protected]>escribió:
>
> Gracias Cristian.
>> No pude implementarlo a eso, habra alguna guia para eso?
>>
>> Sebastián Andrade
>>
>>
>> El 21 de abril de 2013 15:09, Cristian haunsen <[email protected]
>> > escribió:
>>
>> https://github.com/CakeDC/search
>>>
>>>
>>> El 20 de abril de 2013 18:34, Sebastian Andrade 
>>> <[email protected]>escribió:
>>>
>>>> Hola, queria saber si alguien me podia ayudar en realizar opciones de
>>>> filtrado para un listado de clientes. Seria lo basico, filtrar por
>>>> apellido, nombre, etc y no pierda la paginacion.
>>>>
>>>> Donde puedo conseguir algun ejemplo para ver y que funcione.
>>>> Muchas gracias
>>>>
>>>> --
>>>> Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es"
>>>> de Grupos de Google.
>>>> Para anular la suscripción a este grupo y dejar de recibir sus correos
>>>> electrónicos, envía un correo electrónico a
>>>> [email protected].
>>>> Para publicar una entrada en este grupo, envía un correo electrónico a
>>>> [email protected].
>>>> Visita este grupo en http://groups.google.com/group/cakephp-es?hl=es.
>>>> Para obtener más opciones, visita
>>>> https://groups.google.com/groups/opt_out.
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> Es tiempo de cambiar!
>>>
>>>  --
>>> Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de
>>> Grupos de Google.
>>> Para anular la suscripción a este grupo y dejar de recibir sus correos
>>> electrónicos, envía un correo electrónico a
>>> [email protected].
>>> Para publicar una entrada en este grupo, envía un correo electrónico a
>>> [email protected].
>>> Visita este grupo en http://groups.google.com/group/cakephp-es?hl=es.
>>> Para obtener más opciones, visita
>>> https://groups.google.com/groups/opt_out.
>>>
>>>
>>>
>>
>>  --
>> Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de
>> Grupos de Google.
>> Para anular la suscripción a este grupo y dejar de recibir sus correos
>> electrónicos, envía un correo electrónico a
>> [email protected].
>> Para publicar una entrada en este grupo, envía un correo electrónico a
>> [email protected].
>> Visita este grupo en http://groups.google.com/group/cakephp-es?hl=es.
>> Para obtener más opciones, visita
>> https://groups.google.com/groups/opt_out.
>>
>>
>>
>
>  --
> Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de
> Grupos de Google.
> Para anular la suscripción a este grupo y dejar de recibir sus correos
> electrónicos, envía un correo electrónico a
> [email protected].
> Para publicar una entrada en este grupo, envía un correo electrónico a
> [email protected].
> Visita este grupo en http://groups.google.com/group/cakephp-es?hl=es.
> Para obtener más opciones, visita https://groups.google.com/groups/opt_out
> .
>
>
>

-- 
Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de Grupos 
de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos 
electrónicos, envía un correo electrónico a 
[email protected].
Para publicar una entrada en este grupo, envía un correo electrónico a 
[email protected].
Visita este grupo en http://groups.google.com/group/cakephp-es?hl=es.
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.


Responder a