Projeto Básico com Zend Tool

Existem uma série de diferenças na composição de um projeto com o Zend Framework e em cada fonte que se procura, é visto uma solução diferente.

Baseado nas minhas pesquisas, estou anotando abaixo uma sequência inicial para a configuração de um projeto inicial com o Zend Framework.

Estou levando em conta que a Zend Tool já está corretamente configurada no sistema. Então abra o prompt (windows) ou o terminal (mac/linux), navegue até a pasta onde será criado o seu projeto e digite:

zf create project helloworld

A Zend Tool neste ponto deve ter criado a estrutura do seu projeto, mas é necessário fazer algumas adaptações para um melhor aproveitamento e desempenho.

Abra o arquivo public/.htaccess e acrescente esta linha no início do arquivo:

SetEnv APPLICATION_ENV development

Crie uma pasta modules dentro de application, em seguida crie uma pasta default dentro de modules e mova os diretórios controllers e views para dentro dela.

É preciso ajustar algumas configurações antes de testar o seu projeto. Abra o arquivo application.ini e substitua a linha:

resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"

por:

resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"

Aproveitando que estamos tratando do frontController, adicione a variável de ambiente.

resources.frontController.env = APPLICATION_ENV

Adicione um include path para a pasta models logo abaixo do include para os arquivos do ZF.

includePaths.library = APPLICATION_PATH "/../library"
includePaths.models = APPLICATION_PATH "/models"

Inclua também o caminho da sua view e o encoding da sua aplicação.

resources.view.basePath = APPLICATION_PATH "/modules/default/views"
resources.view.encoding = "UTF-8"

Teste agora o seu projeto digitando http://localhost/helloworld/public/

Para adicionar um novo módulo, vá até a pasta modules e digite:

zf create module [nome-do-módulo]

Para adicionar um controller e uma view ao módulo digite:

zf create controller [nome_do_controller] 1 [nome-do-módulo]

Isto já é suficiente para ter um projeto básico rodando.

Como configurações adicionais ao application.ini podemos inserir

resources.frontController.controllerDirectory = APPLICATION_PATH "/modules/default/controllers"
resources.frontController.defaultModule = "default"
resources.frontController.baseUrl = "/" 

Mas até o momento não achei necessário utilizar, pois o módulo default sempre vai ser o default, indicar o defaultModule seria útil se decirmos usar outro módulo como padrão. O encoding você precisa estar atento na criação das suas views e quando salvar o seu arquivo. E os demais apontamentos de pastas já são executados normalmente pelo ZF, portanto até agora sem necessidade de indicar.

2 respostas para “Projeto Básico com Zend Tool”

  1. Estou começando com ZF e antes de começar codificar quero entender bem as configurações, sobretudo a organização em módulos. Seu tutorial foi extremamente útil só fiquei em dúvida quanto ao diretório models.. ele deve ficar na raiz de application ou dentro de cada module deve ter tambem um diretório models?
    Grande abraço!

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *