Passando Valores

Boa tarde

Estudando o Yii Framework ja consegui criar várias paginas carregando dados do BD mysql. mas estou querendo passar uns valores de uma pagina a outra e não estou sabendo como fazer.

Tenho a função actionIndex de um controlados. Ele renderiza os dados recebidos no dataprovider na pagina index.

Mas e se eu quiser que ele selecione apenas os dados da tabela que tenha idade > 10 por exemplo. Onde eu colocaria esta informação e como passar ela de uma pagina a outra?

obrigado

Oi Júnior, (ajusta seu nome no profile brow)

Se bem entendi o que você quer… é apenas filtrar os dados do seu banco de dados (Model) para exibir apenas quem tem idade > 10.

O 1o. exemplo da classe te ajuda:

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




$dataProvider=new CActiveDataProvider('Post', array(

    'criteria'=>array(

        'condition'=>'IDADE>10',

        'order'=>'create_time DESC',

        'with'=>array('author'),

    ),

    'pagination'=>array(

        'pageSize'=>20,

    ),

));



Se você precisar passar parâmetros de pesquisa, acrescente o parâmetro "params":

http://www.yiiframework.com/wiki/173/an-easy-way-to-use-escopes-and-cactivedataprovider/




          'condition'=> 'dataNasc < :10anospratras',

          'params'=> array(':10anospratras'=>$suavariável)



Você deverá calcular a data de hoje - 10 anos pra trás e colocar na variável $suavariável.

Ou utilize o Between:

Depois que você filtrar corretamente seus dados o comando abaixo se encarrega de entregar o seu DataProvider à página:




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

			'dataProvider'=>$dataProvider,

		));