Novas biritas : Introdução ao Zend Framework 2 - Parte 2 - Criando seus controllers

Na parte 1 dessa série de tutoriais, mostrei como criar as actions e as views no controller padrão do módulo padrão do ZF2. Nesta segunda parte, vou ensinar como criar seus controllers.

A bem da verdade, é muito fácil.

  1. Na pasta 'module/Application/src/Application/Controller', crie seu controller com o nome que desejar. Aqui usaremos 'Meucontroller' e criaremos o arquivo 'MeucontrollerController.php'.

  2. Copie todo conteudo do arquivo 'IndexController.php' da mesma pasta. Apenas apague os actions que tem lá - que você pode ter feito a partir do tutorial anterior - deixando apenas o 'indexAction()'.

    Apague o conteudo do 'indexAction()' que agora você terá o mínimo que precisa para ter um controller funcional.

  3. Agora crie a pasta das views desse controller 'module/Application/view/application/user' e dentro dessa pasta crie o arquivo 'index.phtml', que é a 'view' do 'indexAction()' do controller 'Meucontroller'.

  4. E para finalizar, vamos rotear o controller para que ele funcione no módulo 'Application'

    Para isso, abre o arquivo de configuração do módulo 'module/Application/config/module.config.php'

    Dentro desse arquivo, encntre a sessão:

        'controllers' => array(
            'invokables' => array(
                'Application\Controller\Index' => 'Application\Controller\IndexController',
            ),
        ),
    

    e apenas acrescente a linha

        'controllers' => array(
            'invokables' => array(
                'Application\Controller\Index' => 'Application\Controller\IndexController',
                'Application\Controller\Meucontroller' => 'Application\Controller\MeucontrollerController'
            ),
        ),
    
  5. Acrescente algum conteudo na views 'index.phtml' de 'Meucontroller' e entre na url:

    http://localhost/meuprojeto/application/meucontroller/index

Se você viu seu conteudo do 'index.phtml' no navegador, então você fez tudo corretamente, e poderá fazer o mesmo processo para criar mais controllers, e junto com tutorial anterior, criar mais actions para cada um deles.

No próximo tutorial vamos tratar de rotas, links e navigation.

Até lá.

Comentários