Paginação com findBySql

Consigo fazer a paginação com findAll();

No entanto, quando uso o findBySql(), percebo que a paginação não funciona corretamente. Pois a paginação lista todos os registros da tabela.

Como devo fazer a paginação com findBySql ???

posta seu codigo ai pra gente dar uma olhada cara.

abraço

Estou postando o código.

O nome da action e do model são fictícios.




        public function actionTatu_Bola()

	{


        $criteria = new CDbCriteria();

        $count = CascaAzul::model()->count($criteria);

        $pages = new CPagination($count);


        $pages->pageSize = 5;

        $pages->applyLimit($criteria);

        $models = CascaAzul::model()->findBySql("select * from casa");

        

        $this->render('index', array(

            'models' => $models,

            'pages' => $pages

        ));

	}



Edivaldo,

Nos resultados você está usando uma CGridView ou CListView?

Estou usando o CLinkPager




<?php

    $this->widget('CLinkPager', array(

        'pages' => $pages,

    ));

    ?>



Esse código vai no controller:




public function actionTatu_Bola()

        {


        $criteria = new CDbCriteria();

        $count = CascaAzul::model()->count($criteria);

        $pages = new CPagination($count);


        $pages->pageSize = 5;

        $pages->applyLimit($criteria);

        $models = CascaAzul::model()->findBySql("select * from casa where tipo = '1' AND testada = '99' AND terreno = '18' AND modelo = '1' AND data_construcao between '2012-05-01' AND '1965-01-01'");

        

        $this->render('index', array(

            'models' => $models,

            'pages' => $pages

        ));

        }



E esse vai na view:




<?php

$this->widget('CLinkPager', array(

    'pages' => $pages,

));

?>



O erro é que a paginação não pagina os dados de acordo com comando definido no findBySql.

A paginação é feita como se todos os dados da bela estivessem sendo selecionados.

Edivaldo,

Você seguiu esta lógica aqui?

http://www.yiiframework.com/doc/api/1.1/CPagination

Ola, to chegando agora para conhecer o YII anteriormente usava o cakephp

Como o cake o Yii também faz a paginação de resultados de busca ao banco de dados

Agora eu queria saber se eu também posso facilmente fazer paginação de dados tabulados, os quais

foram criados dinamicamente na execução do programa… exemplo um array de array no meu caso

o array tem dentro dele outros 350 array, os quais não

são relevante colocar em uma tabela no banco