Avançando com CakePHP

Postado por DBC Company Em: Capacitação, Desenvolvimento, Tecnologia Sem comentarios

No primeiro artigo foi possível ver alguns conceitos e a filosofia do CakePHP, neste vamos ser um pouco mais práticos. Você vai ver como é possível criar um CRUD (acrônimo de CREATE READ UPDATE DELETE) com poucos comandos e seguindo um passo-a-passo.

Primeira coisa vamos criar um novo projeto, e o CakePHP disponibiliza um projeto cru, mas pronto para iniciarmos rapidamente. Vou considerar que você já tem familiaridade com o terminal. Se não tiver, não tem problema, tente seguir os passos, e na dúvida deixe seu comentário que eu mesmo respondo depois. Ou se preferir vai estar disponível meu e-mail da empresa logo abaixo do artigo.

Bom, vamos lá então, chega de conversa. Abrindo o terminal digite:

composer create-project cakephp/app projeto

Para que esse comando funcione, uma coisa é bem importante, você deve ter seu composer instalado e configurado. No meu caso ele já está configurado globalmente.

A segunda parte do comando é o create-project que nada mais é que um comando do composer utilizado para criar projetos.

Este comando tem dois parâmetros, o primeiro é o nome do projeto, no nosso caso é o “cakephp/app” e o segundo parâmetro é o nome da pasta, que no nosso caso é “projeto”.

Bom, com apenas este comando você pode criar um site se quiser. Para testar localmente, você pode usar o comando:

"bin/cake server".

Claro que esse comando vai funcionar quando você entrar na pasta “projeto” criada anteriormente.

Se tudo deu certo, você vai pode acessar o endereço “localhost:8765” e ver uma página padrão do CakePHP. Para mudar essa página você pode editar o arquivo “src/Template/Pages/homce.ctp”. Pode parecer difícil, mas quando você começar a perceber isso se torna natural, além do mais se você já vem de outro framework nada de novo até aí.

Então, seguindo nosso artigo, vamos configurar agora o banco de dados na nossa aplicação. Edite o arquivo “config/app.php”. Este arquivo é composto por diversas chaves e valor, porém uma dessas chaves é a configuração do banco: “Datasource”. Você precisa informar apenas o nome do banco, nome do usuário e senha.

Feito isso, já podemos utilizar o Migrations e Bake em conjunto. Eu normalmente já utilizo o Migrations para criar minhas tabelas de banco de dados, pois assim desde o início já tenho todo histórico do banco. Além do mais facilita e muito na hora de instalar em outra máquina.

Para criar uma tabela chamada usuario e com campos nome, email, senha, status, vamos executar o comando abaixo:

bin/cake bake migrationsCreateUsuarios nome:string email:string senha:string status:boolean

bin/cake migration migrate

Se você configurou corretamente o banco de dados antes, após esses comandos você vai ter sua primeira tabela no banco de dados sem digitar nada no banco.

Ok, depois de conferir, e confirmar que a tabela usuários foi criada no banco, vamos com o próximo passo. Agora vamos ver a mágica.

bin/cake bake all usuários

E pronto! Tá, vamos acessar localhost:8765/usuarios. Você vai ver que vai aparece uma tela de listagem, com botão para Adicionar. Aqui podemos dizer que o sistema de cadastro de Usuários está pronto, apenas temos que controlar o que quisermos para deixar do jeito que queremos. O fato é que se quisermos podemos usar o padrão dele e já está funcionando o cadastro, a listagem, a atualização e exclusão de registros.

Para irmos um pouco, podemos adiante, e não ficarmos só com o óbvio, vamos instalar um tema. Este tema é um que eu fiz alguns anos, e que já tem mais de 80 mil instalações, mas isso não vem ao caso agora. O que importa é que vamos executar o comando abaixo e o visual será totalmente diferente.

composer require maiconpinto/cakephp-adminlte-theme

Este comando é bem simples, a única diferença dele para o primeiro comando é que ele está instalando esse pacote “maiconpinto/cakephp-adminlte-theme” em um projeto existente, e não criando um projeto do zero.

Depois de instalar o tema no projeto, vamos fazer apenas 3 ajustes em 3 arquivos.

Primeiro arquivo que vamos alterar é o src/Application.php, vamos acrescentar a linha abaixo no método bootstrap:

$this->addPlugin('AdminLTE');

Segundo arquivo vamos editar src/Controller/AppController.php acrescentando a linha abaixo no método beforeRender:

$this->viewBuilder()->setTheme('AdminLTE');

E o terceiro e último arquivo, vamos editar o arquivo src/View/AppView.php, acrescentando a linha abaixo no método initialize:

$this->loadHelper('Form', ['className' => 'AdminLTE.Form']);

Após esses pequenos ajustes vamos executar o comando abaixo.

bin/cake bake all usuarios --theme AdminLTE

Esse comando irá recriar todos os arquivos criados antes, porém usando o tema AdminLTE.

Por fim, podemos acessar novamente o mesmo endereço, e veremos que houve bastante diferença na questão visual. Agora ele está usando um tema.

Esse artigo não foi a última palavra sobre o CakePHP, até por que ele tem muito potencial, diversos recursos interessantes, mas para um segundo artigo acredito que esteja adequado. Caso tenha dificuldade para executar alguns dos comandos, não esquece, tem a área de comentários, e abaixo segue meu e-mail. Ficarei feliz em poder ajudar a conhecer melhor esse framework.

Por Maicon Silva Pinto, Desenvolvedor de Sistemas da DBC.

maicon.silva@dbccompany.com.br

 

 

1 Like

Comments: 0

There are not comments on this post yet. Be the first one!

Deixe um comentário