Nos post anterior, falamos sobre o Entry Point de um componente no Joomla, agora vamos falar sobre o Controlador em sí (Controller).
Como eu me referi no post anterior, chamaremos nosso controle de calculadoraController.php, por motivos que estão especifícados lá.
Este deve ser salvo em:
Aplication/components/com_calculadora/calculadoraController.php
O Código do Nosso controle deve ser algo como isto:
<?php
Esta linha apenas impede acesso direto, melhor explicado no post anterior.
defined( ‘_JEXEC’ ) or die( ‘Restricted access’ );
Aqui de um modo simples podemos dizer que estamos carregando (fazendo um require) a classe controler que não por coincidência, nossa classe herda da mesma.
jimport(‘joomla.application.component.controller’);
Aqui nós criamos, nossa classe que é instanciada no Entry Point.
Este código sobreescreve a função display padrão do JController com uma função exatamente igual.
Isto foi feito apenas para fins de aprendizado.
class calculadoraController extends JController
{
function display()
{
parent::display();
}
}
A função display acima é responsável exatamente por:
Ler e definir o parametro View. O parametro View pode ser pego da URL como em:
http://aplicacao/index.php?option=com_calculadora&view=list
Onde list será a nossa view.
Caso não haja o parametro view no componente o display usará o valor padrão que é o nome do controlador sem os caracteres “Controller”, ou seja no nosso caso será calculadora.
O método display também é responsável por Ler o Layout que será usado na view.
Este layout pode ser lido da URL:
http://aplicacao/index.php?option=com_calculadora&view=list&layout=listlayout
Porém caso ele não seja encontrado, será usado o layout chamado default.
?>
Apenas para explicar melhor a diferença de view e layout, é só pensar que a camada view pode ser dividida em duas partes, view e layout.
A view é constituída por código PHP que define o layout e o layout é um arquivo constituído em sua maioria por HTML, alimentado pela View que só mostra os dados.
Bom este foi o nosso componente Controlador em breve continuaremos.
Obrigado
Tags: componente, controlador, desenvolvimento, Joomla, sistemas, view
junho 4, 2009 às 11:42
[...] para explicar um pouco mais do método display do Controle que eu mencionei lá no terceiro artigo, podemos dizer que o método display carrega a View e o Modelo [...]