Autenticação fácil com Confide | Laravel Brasil микрозаймы онлайн займы на карту займы по паспорту
Autenticação fácil com Confide
« O que de fato é o Composer?
Screencast: introdução ao Laravel »
15 jan 2013 | Segurança
Autor: Luiz Fernando (Zizaco)
O objetivo do Confide é simplificar todo esse processo, portanto o seu uso é bem simples.
Assumindo que temos uma aplicação básica do Laravel 4 funcional.
Caso você não tenha uma aplicação básica, de uma lida em
Iniciando com Laravel 4 ou Primeiros passos com Laravel 4.
Em seu arquivo composer.json, ao final da chave require adicione a seguinte linha:
"zizaco/confide": "<dev-master"
Ao especificar a versão como sendo <dev-master o Composer irá buscar o ultimo release do pacote exceto o dev-master.
Após isso, rode o comando update do Composer no console
Em seu arquivo config/app.php adicione a entrada 'Zizaco\Confide\ConfideServiceProvider' ao final da array $providers. O resultado deve ser semelhante ao mostrado abaixo:
'Zizaco\Confide\ConfideServiceProvider',
Ainda no arquivo config/app.php adicione a entrada 'Confide' => 'Zizaco\Confide\ConfideFacade' ao final da array $aliases:
'Confide'    => 'Zizaco\Confide\ConfideFacade',
Por final coloque um endereço de e-mail e nome na chave 'from' do arquivo config/mail.php
'address' => '[email protected]', 'name' => 'MyApp'
Altere ou crie o arquivo app/models/User.php para:
Sim, o arquivo fica muito menor. Isso ocorre porque ao estender a classe ConfideUser o modelo já terá todo o comportamento necessário ao nosso model.
Agora gere as migrations do Confide através do comando:
O comando irá gerar uma migração com o nome de _confide_setup_users_table.php migration no seu diretório app/database/migrations. Agora você pode rodar essa migration com o comando migrate do artisan:
A migration irá criar uma tabela contendo os campos username, email, password, confirmation_code e confirmed, que são os campos necessários ao Confide. Posteriormente você poderá adicionar mais campos a tabela users.
Antes de rodar as migrações, certifique-se de que a sua aplicação já conecta com a base de dados e de ter executado o comando php artisan migrate:install antes.
Controller e rotas
Após termos as tabelas devidamente configuradas basta rodar os comandos a seguir para que seja geradas as rotas e o controller que irão cuidar das funcionalidades básicas:
Após executar os comandos acima, note que novas rotas surgiram ao final do seu arquivo app/routes.php bem como um novo controller em app/controllers/UserController.php. Você pode editar ambos os arquivos posteriormente.
Por final, não se esqueça de executar o dump-autoload do Composer:
Sua aplicação já possuí as funcionalidades propostas pelo Confide. Para acessar, com as configurações que foram seguidas aqui, use as seguintes rotas:
http://localhost:8000/user/create
http://localhost:8000/user/login
http://localhost:8000/user/forgot_password
Para acessar o usuário que estiver logado basta utilizar o comando Confide::user(). Portanto, para mostrar o nome do usuário corrente podemos editar o arquivo app/views/hello.php para:
<h2><!--?= Confide::user() ? Confide::user()--->username : 'nobody' ?></h2>
Vá em frente. Cadastre um usuário pela url http://localhost:8000/user/create, faça login e verá o seu nome de usuário na tela.
Os formulários padrões do Confide são compatíveis com o Twitter Bootstrap. Portanto não se intimide com a "feiura" deles em uma pagina sem CSS algum. No controller gerado pelo Confide (UserController.php) altere o método create para o seguinte:
return View::make('user.signup');
Desta forma você irá renderizar a View user.signup. Vamos criar essa view no diretório app/views/user com o nome de signup.blade.php e com o seguinte conteúdo:
<!doctype html><meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /><meta name="viewport" content="width=device-width,initial-scale=1" />
<!-- Um host do TwitterBootstrap -->
<link href="//netdna.bootstrapcdn.com/twitter-bootstrap/2.2.2/css/bootstrap.no-icons.min.css" rel="stylesheet" /></pre>
body{             background-color: #EEE;         }         div.maincontent{             padding: 40px;             border-radius: 5px;             moz-border-radius: 5px;             background-color: #FFF;             width: 600px;             margin: auto;             margin-top: 40px;             box-shadow: 0px 0px 10px rgba(0,0,0,0.2);             moz-box-shadow: 0px 0px 10px rgba(0,0,0,0.2);         }
<!-- Renderiza o form de cadastro do Confide -->
{{ Confide::makeSignupForm()->render(); }}</div>
Agora basta acessar http://localhost:8000/user/create para ter um resultado muito mais elegante:
Confide com TwitterBootstrap
Não é necessário utilizar os formulários gerados pelo Confide. Você pode criar seu próprio formulário que envie os dados para a rota POST correta.
O Confide possuí arquivos de localização para português. Para usa-lo basta editar a configuração locale no seu arquivo config/app.php para 'pt':
'locale' => 'pt',
É possível notar a rapidez com que as funcionalidades que são comuns a grande maioria das aplicações web foram concretizadas me nossa aplicação. Apesar disso, o controller, as rotas e a migração gerados podem ser alterados de forma a não limitar o desenvolvedor aos valores padrão do Confide.
Falamos pouco da classe ConfideUser. Porém o importante a saber é que uma vez que seu model estende essa classe, não é necessário se preocupar em implementar os comportamentos básicos e ao mesmo tempo é possível sobrescrever os métodos e criar seu próprio comportamento, caso seja necessário.
Podemos concluir que o Confide traz a conveniência de ter as funcionalidades out-of-the-box e ao mesmo tempo permite personalizar seu comportamento.
Wemerson C. Guimarãeas
Muito bom o artigo cara… Achei formidável a abordagem…
Muito bom, mas como faço para validar o usuário com email de confirmação?
http://about.me/ramirovjnr Ramiro Varandas Jr
Depois só não esquece de atualizar o tutorial, pois ainda aponta para o antigo ServiceProvider e Facade.