Fazendo um CRUD e conhecendo o Laravel

Hosana Barcelos
sysvale
Published in
4 min readJun 2, 2023

Laravel é um framework PHP livre e open-source criado para o desenvolvimento de sistemas web que utilizam o padrão MVC e tem como principal característica, ajudar a desenvolver aplicações seguras e performáticas de forma rápida, com código limpo e simples.

Oi! Me chamo Hosana Barcelos e sou Desenvolvedora na Sysvale Softgroup. Esse artigo tem como objetivo mostrar como foi minha experiência com o Framework Laravel. Bora embarcar nessa viagem espacial?

Por diversas vezes passei olhando alguns arquivos PHP usando o Laravel e sempre saia deles com algumas (ou muitas) dúvidas sobre o funcionamento desse cara!

Fiz um projeto usando o Vue como SPA e o Laravel como API que cria e gerencia frases, para começar a entender como funciona o famoso Laravel e todo o seu fluxo. E como no fim tudo é CRUD, tinha que ser um CRUDzinho, né?

Apesar de ser um projeto básico e iniciante, dá pra absorver a base necessária para começar a usar o framework.

Requisitos

Para começar o desenvolvimento da API, foi importante entender as etapas necessárias. Primeiramente, é nececessário atender os requisitos básicos do framework conforme a documentação oficial do Laravel:

  • PHP >= 7.2.5
  • BCMath PHP Extension
  • Ctype PHP Extension
  • Fileinfo PHP extension
  • JSON PHP Extension
  • Mbstring PHP Extension
  • OpenSSL PHP Extension
  • PDO PHP Extension
  • Tokenizer PHP Extension
  • XML PHP Extension

Instalação

Após, foi necessário utilizar o gerenciador de pacotes composer para fazer a instalação do Laravel. Com o composer instalado e no diretório escolhido, bastou rodar o seguinte comando para começar a instalação:

composer create-project --prefer-dist laravel/laravel crud-laravel

E para iniciar o servidor, é só acessar o diretório que acabou de ser criado e rodar o comando:

php artisan serve

Informações do Banco

No diretório raiz onde o projeto crud-laravel foi criado, é possível visualizar um arquivo .env e é nesse arquivo que realizamos as configurações de ambiente. Essa parte requer atenção pois se as configurações do Banco de Dados não estiverem corretas, o projeto não funcionará como o esperado. As informações do meu Banco de Dados ficaram assim:

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=

IPC: Caso você visualize o erro Access denied for user ‘root’@’localhost’ (using password: NO) no navegador, significa que você está tentando acessar a base de dados pelo usuário root sem informar a senha. Verifique no seu banco de dados qual a senha desse usuário e tente acessar a base com a senha.

Mais informações no link: https://pt.stackoverflow.com/questions/70151/erro-access-denied-for-user-rootlocalhost-using-passwordno-ao-aceder-a

Desenvolvimento

  1. Para o começo do desenvolvimento, primeiro criamos um Model:
php artisan make:model Phrase -m

2. Após a criação do modelo, iremos criar as tabelas do banco no arquivo presente em database/migrations (o Laravel já possui algumas migrations nativas e é possível visualizá-las a partir do diretório citado). Essa tabela terá os atributos category e phrase:

3. Agora vamos criar efetivamente essa tabela em em nosso banco, rodando as migrations. E para isso, iremos utilizar o artisan com o seguinte comando:

php artisan migrate

Se as migrations foram rodadas com sucesso, podemos partir para a criação das rotas.

4. Para criarmos as rotas, iremos até o arquivo api.php presente em /routes/api.php. Criamos 5 rotas:

  • Rota GET para listar as frases;
  • Rota POST para adicionar uma nova frase na lista;
  • Rota GET para retornar os dados de uma frase específica;
  • Rota PUT para editar uma frase;
  • Rota DELETE para excluir uma frase.

5. Após a criação das rotas, iremos criar o Controller com o seguinte comando:

php artisan make:controller PhraseController

6. Dentro do Controller (presente no diretório Http/Controllers/PhraseController.php) iremos criar nossas funções para os métodos vistos anteriormente.

Após a criação dos métodos, nosso back-end está pronto e tudo já pode ser testado! Para visualizar a interação com os métodos, precisei integrar o back-end ao front-end com ajuda do Axios. Você pode ver o consumo da API e criação dos métodos no Vue através da pasta /app presente no repositório.

7. Ao acessar a rota de listagem, é possível visualizar todas as frases que foram cadastradas no banco:

Foi uma experiência interessante desenvolver um CRUD com Laravel pois consegui absorver o fluxo de funcionamento, tanto começando um projeto novo, quanto gerenciando um já existente. 🚀

O projeto está disponível no GitHub e você consegue acessar por esse link: https://github.com/hosanabarcelos/crud-laravel.

Você pode acompanhar o escritor em outras redes acessando hosana.me.

--

--