Tutorial Laravel para iniciantes - Parte 07 [Criando uma Camada de autenticação]

Nesse post iremos aprender como criar um formulário de cadastro e login completo com apenas uma linha de comando, isso sim apena uma linha, além disso também aprenderemos como validar usuários logados!

Glossário:



1) Criando Formulário de Login / Cadastro

Nas versões anteriores do Laravel era necessário criar o formulário manualmente, porem no Laravel 5.4 basta executar um somando que já é criado automaticamente o formulário de cadastro, com apenas nome, e-mail e senha como o nosso foco é facilitar e agilizar o desenvolvimento, faremos uso desse recurso, e para isso execute o comando a baixo:
php artisan make:auth
O que esse comando faz? Basicamente ele cria uma página completa com o formulário de cadastro, login e recuperação de senha! Agora caso queira edita-los, basta seguir no diretório resources/views/auth que lá teremos os arquivos: login.blade.php e register.blade.php
Com esse comando não será necessário criar nenhuma classe de controle, nem criar as Routes, em outras palavras após executar esse comando está pronto!

2) Alterando nossa tela inicial

Aqui eu vou sair rapidamente do foco desse post devido a uma coisa muito legal que percebi, em projetos pessoais eu criava variáveis que basicamente contem partes do código que se repetiam por toda a página assim facilitando o desenvolvimento, ao estudar Laravel estava ficando preocupado em ter que reescrever códigos, porem ao chegar nessa parte dos meus estudos vi que estava enganado! Então vamos lá! Aqui basicamente removi o HTML exceto o conteúdo do <div class="container">, basicamente abra o seu welcome.blade.php e substitua pelo código abaixo e repita o processo com o listar.blade.php:
Como falei basicamente removi todo o código excluindo o conteúdo da div.
Agora abre em seu navegador e veja as diferenças, o novo menu que está aparecendo está localizado no diretório layouts no arquivo app.blade.php.
Após ver e ficar abismado com essa nova tela, vamos fazer um novo cadastro essa parte é por sua conta:
Formulário de Cadastro

3) Protegendo a rota /listar

Agora vamos editar a nossas rotas para adicionarmos os Middleware para a rota /listar:
O middleware fornece um mecanismo conveniente para filtrar solicitações HTTP inserindo seu aplicativo. Por exemplo, o Laravel inclui um middleware que verifica se o usuário do seu aplicativo está autenticado. Se o usuário não estiver autenticado, o middleware redirecionará o usuário para a tela de login. No entanto, se o usuário for autenticado, o middleware permitirá que a solicitação continue na aplicação.
Abra o diretório routes/ e o arquivo web.php e vamos edita-lo, remova a atual linha destinada a rota listar/ e adicione a nova:
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Route::get('/', 'ContatoController@index');
Route::post('/enviar', 'ContatoController@enviar');
// Route::get('/listar', 'ContatoController@listar'); // Linha antiga somente para comparação
Route::get('/listar', ['middleware' => 'auth', 'uses' => 'ContatoController@listar']);

// LOGIN
Auth::routes();
Route::get('/home', 'HomeController@index');
Aqui repare que o middleware, para verificar se o usuário está logado, vamos testar!

Tente abrir a listagem de contatos antes de estar logado, a aplicação irá direcionar para o formulário de login, porem caso já esteja logado o sistema irá carregar a listagem sem nenhum problema! Para saber mais sobre Middlewares veja esse link: https://laravel.com/docs/5.4/middleware


Nesse post não tenho muito a explicar pois o Laravel já faz todo o nosso trabalho na hora de criar o formulário de login e cadastro, mas a frente irei aprender e ensinar como personalizar esses formulários, mas por hoje vamos ficar aqui mesmo! Off comprei o livro Laravel para Ninjas estarei lendo-o e trarei uma resenha para vocês e também usarei o conteúdo dele para fazer mais postagens!




Se vocês gostaram desse Post não deixe de compartilhar com seus amigos!!!
E para não perder nenhuma novidade nos sigam nas redes sociais:
Twitter: @Bulfaitelo
Share on Google Plus

About Thiago Rodrigues

Formado em Sistema de Informação pela Faculdade Paraíso
O que falar de mim? Não á muito, mas garanto que meu objetivo aqui é somente ajudar!
Atualmente desenvolvendo o projeto do QiEstudo.

Comentários
0 Comentários

0 comentários:

Postar um comentário