3.5.3.1 Interagindo com as views
O método set() é a principal forma de enviar dados do seu controller para sua view. Um vez que você usou set(), a variável pode ser acessada na sua view.
<?php
// Primeiro você passa os dados do controller:
$this->set('cor', 'pink');
// Então, na view, você pode utilizar os dados:
Você selecionou a cor <?php echo $cor; ?> para colorizar o cake.
?>
<?php// Primeiro você passa os dados do controller:$this->set('cor', 'pink');// Então, na view, você pode utilizar os dados:Você selecionou a cor <?php echo $cor; ?> para colorizar o cake.?>
O método set() também pega um array associativo como seu primeiro parâmetro. Esse pode ser geralmente uma caminho rápido para atribuir um grupo de informações para a view. Perceba que os índices de seu array sofrerão inflection antes de serem atribuídos à view ('indice_com_underline' se torna 'indiceComUnderline', etc.):
<?php
$dados = array(
'cor' => 'pink',
'tipo' => 'açucar'’,
'preco_base' => 23.95
);
// fazem $cor, $tipo, e $precoBase
// disponíveis na view:
$this->set($data);
?>
<?php$dados = array('cor' => 'pink','tipo' => 'açucar'’,'preco_base' => 23.95);// fazem $cor, $tipo, e $precoBase// disponíveis na view:$this->set($data);?>
O método render() é automaticamente chamado ao final de cada action do controller requisitada. Esse método executa toda a lógica da view (usando dados que você forneceu usando o método set()), insere a view dentro do layout e o serve de volta para o usuário final.
O arquivo de view padrão renderizado é determinado por convenção. Se a action buscar() do ReceitasController é requisitada, o arquivo de view /app/views/receitas/buscar.ctp será renderizado.
Ainda que o CakePHP vá automaticamente chamá-lo (a menos que você configure $this->autoRender para false) depois de cada lógica de action, você pode usá-lo para especificar um arquivo de view alternativo configurando o nome da action no controller usando $action. Você pode também especificar um arquivo alternativo um terceiro parâmetro, $file. Quando usar $file, lembre-se de utilizar um pouco das constantes globais do CakePHP (como a VIEWS).
O parâmetro $layout permite especificar o layout na qual a view é renderizada.
3.5.3.1.1 set
set(string $var, mixed $value)
O método set() é a principal forma de enviar dados do seu controller para sua view. Um vez que você usou set(), a variável pode ser acessada na sua view.
<?php
// Primeiro você passa os dados do controller:
$this->set('cor', 'pink');
// Então, na view, você pode utilizar os dados:
Você selecionou a cor <?php echo $cor; ?> para colorizar o cake.
?>
<?php// Primeiro você passa os dados do controller:$this->set('cor', 'pink');// Então, na view, você pode utilizar os dados:Você selecionou a cor <?php echo $cor; ?> para colorizar o cake.?>
O método set() também pega um array associativo como seu primeiro parâmetro. Esse pode ser geralmente uma caminho rápido para atribuir um grupo de informações para a view. Perceba que os índices de seu array sofrerão inflection antes de serem atribuídos à view ('indice_com_underline' se torna 'indiceComUnderline', etc.):
<?php
$dados = array(
'cor' => 'pink',
'tipo' => 'açucar'’,
'preco_base' => 23.95
);
// fazem $cor, $tipo, e $precoBase
// disponíveis na view:
$this->set($data);
?>
<?php$dados = array('cor' => 'pink','tipo' => 'açucar'’,'preco_base' => 23.95);// fazem $cor, $tipo, e $precoBase// disponíveis na view:$this->set($data);?>
3.5.3.1.2 render
render(string $action, string $layout, string $file)
O método render() é automaticamente chamado ao final de cada action do controller requisitada. Esse método executa toda a lógica da view (usando dados que você forneceu usando o método set()), insere a view dentro do layout e o serve de volta para o usuário final.
O arquivo de view padrão renderizado é determinado por convenção. Se a action buscar() do ReceitasController é requisitada, o arquivo de view /app/views/receitas/buscar.ctp será renderizado.
Ainda que o CakePHP vá automaticamente chamá-lo (a menos que você configure $this->autoRender para false) depois de cada lógica de action, você pode usá-lo para especificar um arquivo de view alternativo configurando o nome da action no controller usando $action. Você pode também especificar um arquivo alternativo um terceiro parâmetro, $file. Quando usar $file, lembre-se de utilizar um pouco das constantes globais do CakePHP (como a VIEWS).
O parâmetro $layout permite especificar o layout na qual a view é renderizada.
