Yii Framework Forum: Criar Sessão E Grid Temporário - Yii Framework Forum

Jump to content

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

Criar Sessão E Grid Temporário Rate Topic: -----

#1 User is offline   dja 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 4
  • Joined: 16-January 14

Posted 20 January 2014 - 11:26 AM

Boa tarde Pessoal, tenho um botão que vai carregar os dados que estão em alguns campos para um sessão e com esta sessão eu preencho uma tabela exibindo os dados antes de gravar no banco. Gostaria de saber como faço isso pelo Yii??

Alguem pode me ajudar???
0

#2 User is offline   Wanderson 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 77
  • Joined: 20-February 09
  • Location:Rio de Janeiro, Brazil

Posted 20 January 2014 - 03:24 PM

View Postdja, on 20 January 2014 - 11:26 AM, said:

Boa tarde Pessoal, tenho um botão que vai carregar os dados que estão em alguns campos para um sessão e com esta sessão eu preencho uma tabela exibindo os dados antes de gravar no banco. Gostaria de saber como faço isso pelo Yii??

Alguem pode me ajudar???



Não deu pra entende bem sua dúvida, faltou descrever melhor o problema. Abaixo segue alguns exemplos de código que talvez lhe possa ser útil.



<?php

// função para adicionar os dados na sessão
protected function addDataSession()
{
	// dados fictícios
	$rawData = array(
		array('id'=>1, 'nome'=>'Joaozinho', 'email'=>'joaozinho@dominio.com'),
		array('id'=>2, 'nome'=>'Luluzinha', 'email'=>'luluzinha@dominio.com')
	);
	Yii::app()->user->setState('sessaoTeste', $rawData);
}



public function actionIndex()
{
	// pega os dados da sessão: 'sessaoTeste'
	$rawData = Yii::app()->user->getState('sessaoTeste');

	// necessário para exibir no CGridView
	$dadosSessao = new CArrayDataProvider($rawData, array(
		'id'=>'id',
		'pagination'=>array(
			'pageSize'=>10,
		),
	));

	$this->render('index', array('dadosSessao'=>$dadosSessao));
}


// código para exibir grid na view
$this->widget('zii.widgets.grid.CGridView', array(
	'dataProvider' => $dadosSessao,
	'columns' => array(
		'id',
		'nome',
		array(
			'name' => 'email',
			'type' => 'raw',
			'value' => 'CHtml::link(CHtml::encode($data["email"]), "mailto:".CHtml::encode($data["email"]))',
		),
	),
));?>

0

#3 User is offline   dja 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 4
  • Joined: 16-January 14

Posted 22 January 2014 - 01:22 PM

View PostWanderson, on 20 January 2014 - 03:24 PM, said:

Não deu pra entende bem sua dúvida, faltou descrever melhor o problema. Abaixo segue alguns exemplos de código que talvez lhe possa ser útil.



<?php

// função para adicionar os dados na sessão
protected function addDataSession()
{
	// dados fictícios
	$rawData = array(
		array('id'=>1, 'nome'=>'Joaozinho', 'email'=>'joaozinho@dominio.com'),
		array('id'=>2, 'nome'=>'Luluzinha', 'email'=>'luluzinha@dominio.com')
	);
	Yii::app()->user->setState('sessaoTeste', $rawData);
}



public function actionIndex()
{
	// pega os dados da sessão: 'sessaoTeste'
	$rawData = Yii::app()->user->getState('sessaoTeste');

	// necessário para exibir no CGridView
	$dadosSessao = new CArrayDataProvider($rawData, array(
		'id'=>'id',
		'pagination'=>array(
			'pageSize'=>10,
		),
	));

	$this->render('index', array('dadosSessao'=>$dadosSessao));
}


// código para exibir grid na view
$this->widget('zii.widgets.grid.CGridView', array(
	'dataProvider' => $dadosSessao,
	'columns' => array(
		'id',
		'nome',
		array(
			'name' => 'email',
			'type' => 'raw',
			'value' => 'CHtml::link(CHtml::encode($data["email"]), "mailto:".CHtml::encode($data["email"]))',
		),
	),
));?>



Digamos que eu queira pegar os dados da sessão e renderizar na tela como faço isso??
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