Laravel para iniciantes - Primeiros passos

Veja os primeiros passos para iniciar no Laravel


Antes de qualquer coisa, para quem ainda não sabe o Laravel é um framewor de PHP. Então se você não sabe nada de PHP é muito arriscado começar a programar utilizando um framework. Essa é minha opinião, embaso no fato de que muitos termos não serão claros para iniciantes.

O que você vai ver nesse post:

  • Introdução ao Laravel framework
  • Como instalar/criar um projeto
  • Configurar o arquivo .env para utilização do banco de dados
  • Implementar em segundos a autenticação do Laravel (login/register)
  • Criar tabelas no banco de dados através de "migrations"

Conheço a linguagem PHP e por onde começo?

Antes de qualquer coisa acesse: https://laravel.com/ esse é o site oficial do framework e recomendo que sempre pesquise nesse site em primeiro lugar qualquer dúvida ou funcionalidade que queria aprender. Simplesmente porque é a fonte mais confiável.

Acessou o site? Espero que sim, então vá no link "Documentation" e veja os pre-requisitos para a instalação do framework, nesse momento em que estou escrevendo esse post a versão é a 5.7 mas como abaixo você verá algumas fotos, não se oriente pelas fotos caso a versão que você estiver usando não seja a 5.7.


Criando o ambiente em meu computador

Na demonstração eu estou usando o MAMP (Mac Apache MySql PHP) que é um emulador de servidor para Mac. Caso você esteja usando Windows você pode usar o XAMPP e caso esteja usando Linux pode usar o LAMP. Nesse post não vou tratar da instalação dessas soluções mas deixe nos comentários se você precisar.

[Atualizado] => Dá uma olhada no vídeo para instalar o XAMPP no Windows aqui: https://youtu.be/ytkwLRqIKPs

Após a instalação da solução que estiver usando, você poderá abrir o PHPMyAdmin no Browser, deve ser algo assim http://localhost:<PORTA>/PHPMyAdmin. No meu caso ficou assim: http://localhost:8888/phpmyadmin

*Lembrando que a porta 8888 foi a porta pré-configurada pelo MAMP no meu caso, mas no seu pode ser outra porta, sendo que é indiferente qual porta você estiver usando nesse momento por se tratar de uma aplicação sendo executada de forma local.


Criando um banco de testes com o PHPMyAdmin

Na lateral esquerda há um botão escrito "Novo BD" ou "New DB", clique e na parte central haverá um campo para criar o banco de dados, digite o nome que desejar. No caso do exemplo utilizei "banco_demo" e clique em "Criar".


Interagindo com o projeto via terminal

Se você não tem familiaridade com comandos no terminal não se assuste pois é relativamente simples, mas recomendo a estudar operar as coisas via terminal pois vai lhe proporcionar um significativo no seu conhecimento. Assim como operamos muitas funcionalidades em ambientes Unix o terminal será de grande utilidade ao interagir em projetos Laravel, no meu ponto de vista imprescindível.

Criando o projeto laravel via composer

Abra o terminal e navegue até a pasta "htdocs" do emulador que estiver utilizando, agora dentro dessa pasta vamos criar nosso projeto. Seguindo a documentação que nos dá a opção de fazer isso com o composer. Se você não tem o composer instalado é fácil, acesse a página do composer https://getcomposer.org/download/ e execute o passo-a-passo descrito na página.



Após o composer configurado, no terminal digite:

composer create-project --prefer-dist laravel/laravel <nomedoprojeto>

Se ocorrer um erro pode ser porque o composer não está lendo de forma global e nesse caso é necessário configurá-lo dessa forma, então sugiro pesquisar como fazer de acordo com o seu sistema operacional.

No caso, dei o nome do projeto de "projetodemo" e ele fez o download de todo projeto e suas dependências.


Configurando a conexão com o banco de dados no arquivo .env


Antes disso preciso comentar sobre o editor de texto que poderá utilizar para editar o seu código. Tem ótimos editores para se trabalhar com PHP, como: ATOM, Sublime Text e outros, mas eu uso e recomento o VSCode (Visual Studio Code) pois é um projeto gratuito muito leve e com muitos recursos e funciona em qualquer plataforma. O VSCode tem um terminal acoplado que vai facilitar muito a sua vida. Acessa lá o site deles e baixa ele: https://code.visualstudio.com/

Agora com o editor de sua preferência, abra o arquivo .env que está na raiz do projeto. E em seguida vamos configurar as seguintes linhas:


DB_CONNECTION=mysql

DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=homestead

Abaixo vou explicar linha a linha o que significa e como vamos configurar:

DB_CONNECTION=mysql

Define qual é o banco de dados que vamos utilizar, nesse caso vem pré-configurado com "mysql" e vamos manter assim pois é ele que vamos usar

DB_HOST=127.0.0.1

Define o endereço do HOST do banco de dados, isso significa que na hora que abrir a conexão com o banco de dados vamos precisar informar onde está hospedado o banco de dados que numa situação real o banco de dados pode não está no mesmo host que o projeto PHP. No nosso caso vamos manter em 127.0.0.1 que se refere à interface de loopback ou se configurar localhost também vai ter o mesmo efeito porque vai se referir a ao mesmo host que o PHP.

DB_PORT=3306

Define a porta de comunicação utilizada pelo servidor MySql para publicar o serviço do banco de dados, a porta padrão do MySQL é 3306 mas não é obrigatório utilizar essa porta, no caso do MAMP ele configura na porta 8889. E no caso do exemplo que estou fazendo ou alterar para 8889.

DB_DATABASE=homestead

Define o nome do banco de dados criado, no nosso caso criamos anteriormente o banco de dados "banco_demo" através do PHPMyAdmin

DB_USERNAME=homestead

Define o nome do usuário de banco de dados configurado no servidor MySQL, no nosso caso vamos utilizar para exemplo o usuário padrão que já vem configurado pelo MAMP que é root.

DB_PASSWORD=homestead

Define a senha para o usuário do banco de dados citado acima, no caso a senha padrão configurada pelo MAMP também é root.

As configurações ficaram assim:

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=8889
DB_DATABASE=banco_demo
DB_USERNAME=root
DB_PASSWORD=root

Salve o arquivo e as configurações de acesso à banco de dados estarão finalizadas.

Criando autenticação em segundos (login/register)

Vá para o terminal e digite: php artisan make:auth
Pronto, nesse momento ele criará as telas e que  for necessário para operar essas funções, além de criar dentro de "resources/views" a pasta "layouts" e o arquivo "app.blade.php" nele vai conter um template com o topo da aplicação para mostrar os links para "login" e "register"

Acesse: http://localhost:8888/projetodemo/public e verá as mudanças, mas ainda não há tabelas criadas para operar essas funções persistindo dados no bando de dados, não é? Vamos para essa etapa no próximo passo...

Criando tabelas no banco de dados utilizando migrations

Por padrão o Laravel já traz consigo duas migrations prontas para operar o login, essas migrations você pode ver em "database/migrations", abra os arquivos e note que são escritos em PHP e em ambos tem uma função chamada "up" que será responsável por criar a tabela no banco de dados.

Para executarmos essas funções vamos para o terminal, digite: php artisan migrate
Pronto, veja que nesse momento ele criou uma tabela chamada "migrations" e em seguida as tabelas "users" e "passwords_resets".

Agora você pode tentar registrar um usuário e fazer login com ele.

Fiz um video mostrando tudo que expliquei aqui no post, assiste e me diz o que achou, se teve alguma dificuldade. Em breve vou fazer mais conteúdo sobre como montar o ambiente em outros sistemas operacionais e volto aqui e atualizo post.

Deixe o seu comentário, é muito importante para mim. Um grande abraço!



Comentários

  1. Slots | Casino, Sports, and more | Goyangfc.com
    If you want to bet on poker or casino games in Mexico, 비트코인게임 you 꽁머니 지급 have 바카라커뮤니티 to 바카라 검증사이트 make a reservation and start playing at the casino. The casino will open 벳인포해외배당흐름 on Sunday

    ResponderExcluir

Postar um comentário

Postagens mais visitadas deste blog

Número par ou impar em C#

SQL Server - Duplicando tabela [Dica] [Video]

Calculo de area do circulo em liguagem C#