Olá a todos, vamos dar continuidade a nossa série de tutoriais sobre o Framework Symfony.
Na promeira parte do tutorial, mostramos como baixar e instalar o Symfony, conferir a sua versão e agora, iniciaremos o nosso projeto.
Como puderam ver, eu não falei nada sobre que sistema criar e, o que ele vai fazer até o momento, bom... Isso ocorre pois o primeiro momento são apenas configurações genéricas que serão utilizadas por qualquer aplicação independente do seu contexto, ainda não entraremos no mérito da aplicação, continuaremos com as configurações iniciais.
O que criaremos???
Para fins de estudo, criaremos uma simples aplicação de automação comercial, onde será acessada pelo vendedor, gerente e administrador do sistema. Essa aplicação permitirá apenas o cadastramento de produtos, clientes e um caixa para registrar a venda, será possível também, visualizar os produtos que são vendidos ao cliente, exemplo: Cliente A comprou os produtos X, Y e Z; esses produtos constaram para visualização no sistema, somente.
Vamos nessa!!!
Com o comando para testarmos se o Symfony não possui erros, conforme tutorial anterior, na pasta raiz do projeto podemos executar os seguintes comandos:
# cd /var/www/projeto1 # php lib/vendor/symfony/data/bin/symfony generate:project projeto1 |
Executando o comando acima estamos criando toda a estrutura de diretórios do nosso projeto. Com isso podemos criar dentro do nosso projeto a nossa aplicação, conforme comando abaixo:
# php symfony generate:app vendedor |
Notem que a aplicação será criada dentro do diretório do “projeto1” e essa aplicação em si levará o nome de “vendedor”, pois será uma aplicação que será acessado pelo vendedor. Outro fator importante é que podemos criar mais de uma aplicação, como faremos, conforme comando abaixo:
# php symfony generate:app gerente # php symfony generate:app admin |
Estamos criando agora as aplicações que serão acessadas pelo gerente e pelo administrador do sistema.
Pois bem, caso não tenhamos nenhum erro, aparecerá uma lista de diretórios e arquivos criados, conforme abaixo, respectivamente para cada aplicação, neste caso copiei somente os arquivos correspondente a aplicação admin.
>> dir+ /var/www/projeto1/apps/admin/config >> file+ /var/www/projeto1/apps/admin/config/routing.yml >> file+ /var/www/projeto1/apps/admin/config/settings.yml >> file+ /var/www/projeto1/apps/admin/con...plicationConfiguration.class.php >> file+ /var/www/projeto1/apps/admin/config/security.yml >> file+ /var/www/projeto1/apps/admin/config/view.yml >> file+ /var/www/projeto1/apps/admin/config/filters.yml >> file+ /var/www/projeto1/apps/admin/config/cache.yml >> file+ /var/www/projeto1/apps/admin/config/factories.yml >> file+ /var/www/projeto1/apps/admin/config/app.yml >> dir+ /var/www/projeto1/apps/admin/i18n >> dir+ /var/www/projeto1/apps/admin/lib >> file+ /var/www/projeto1/apps/admin/lib/myUser.class.php >> dir+ /var/www/projeto1/apps/admin/modules >> dir+ /var/www/projeto1/apps/admin/templates >> file+ /var/www/projeto1/apps/admin/templates/layout.php >> tokens /var/www/projeto1/apps/admin/config/settings.yml >> file+ /var/www/projeto1/web/admin.php >> file+ /var/www/projeto1/web/admin_dev.php >> tokens /var/www/projeto1/web/admin.php >> tokens /var/www/projeto1/web/admin_dev.php >> rename /var/www/projeto1/apps/admin/con...fig/adminConfiguration.class.php >> tokens /var/www/projeto1/apps/admin/config/adminConfiguration.class.php >> chmod 777 /var/www/projeto1/web/uploads >> chmod 777 /var/www/projeto1/cache >> chmod 777 /var/www/projeto1/log >> chmod 777 /var/www/projeto1/symfony >> chmod 777 /var/www/projeto1/web/uploads/assets >> dir+ /var/www/projeto1/test/functional/admin |
O Symfony foi desenvolvido para trabalhar com URL Amigável (caso seja do interesse do desenvolvedor), desta forma, podemos configurar o nosso Apache para receber tais parâmetros. Segue abaixo um pequeno tutorial sobre o Apache para que nosso trabalho seja bem elaborado:
Primeiramente, precisamos verificar se o módulo Rewrite está habilitado, através do comando abaixo podemos habilitá-lo ou confirmar se o mesmo encontra-se ativo.
# a2enmod rewrite |
Se não aparecer nada, significa que o módulo foi habilitado, caso apareça uma mensagem conforme veremos abaixo, significa que o módulo já encontra-se habilitado, caso apareça algo de diferente, postem nos comentários para que eu entenda o erro e ajudar:
### Módulo do Apache já habilitado. # Module rewrite already enabled |
Agora vem o processo de configurarmos o host, ou seja, o endereço local a ser acessado via navegador. Segue o script abaixo que deve ser incluido dentro do arquivo httpd.conf que fica em /etc/apache2/
Incluido e salvo estas informações dentro do arquivo httpd.conf, precisamos incluir o caminho no arquivo de hosts, realizamos esse processo com o seguinte comando:
Feito isso, basta resetar o servidor Apache:
# echo "127.0.0.1 projeto1.local">>/etc/hosts |
Feito isso, basta resetar o servidor Apache:
# /etc/init.d/apache 2 reload |
Com tal comando nosso Apache resetará e já será possível acessar o nosso projeto via navegador com o seguinte endereço:
# http://projeto1.local |
Com isso, nosso projeto foi criado e já poderá ser acessado através do navegador. Claro, ainda não trabalhamos com o Banco de Dados e isso ficará para o próximo tutorial. Onde trabalharemos exclusivamente com o Banco de Dados do nosso sistema.
Até a próxima!!!