Yii Framework Forum: Passando Valores - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Passando Valores Rate Topic: -----

#1 User is offline   Jjunior 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 37
  • Joined: 07-November 12

Posted 13 November 2012 - 01:21 PM

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
0

#2 User is offline   Gustavo Gonçalves 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 40
  • Joined: 02-October 12
  • Location:Belo Horizonte, MG - Brasil

Posted 14 November 2012 - 07:57 AM

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.yiiframew...iveDataProvider

$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.yiiframew...vedataprovider/

          '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:
http://stackoverflow...-range-criteria

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,
		));

0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users