Ademir C. Gabardo. Novatec

Documentos relacionados
Matheus Marabesi Michael Douglas

Ademir Cristiano Gabardo. Novatec

Miguel Grinberg. Novatec

Sumário. Prefácio Capítulo 1 Orientação e primeiras etapas Capítulo 2 Dados: trabalhando com texto e números... 40

Osvaldo Santana Thiago Galesi

Desenvolvendo Websites com PHP

Web Interativa com Ajax e PHP

Introdução ao GitHub Peter Bell e Brent Beer

Ryan Mitchell. Novatec

André Gugliotti. Novatec

Shyam Seshadri & Brad Green

William Pereira Alves

Ademir Cristiano Gabardo. Novatec

Sumário. Parte I Elementos essenciais Sobre o autor Sobre o revisor técnico Prefácio... 14

Construindo Aplicações Node com MongoDB e Backbone Mike Wilson

AngularJS. Uma abordagem prática e objetiva. Michael Henrique R. Pereira. Novatec

Hélio Engholm Jr. Novatec

Programando para. iphone e ipad. Aprenda a construir aplicativos para o ios. André Milani. Novatec

Adriano Pataro. Novatec

jquery Mobile Desenvolva aplicações web para dispositivos móveis com HTML5, CSS3, AJAX, jquery e jquery UI Maurício Samy Silva Novatec

Luiz Eduardo Borges. Novatec

Editor: Rubens Prates PY Editoração eletrônica: Carolina Kuwabata Revisão gramatical: Patrizia Zagni Capa: Edinei Gonçalves/Carolina Kuwabata

4ª Edição Pablo Dall Oglio

Simon Holmes. Novatec

Benjamin Bengfort Jenny Kim

Primeiros Passos com o Netduino

PHP. Programando com Orientação a Objetos. Pablo Dall Oglio. Novatec

jquery Mobile Desenvolva aplicações web para dispositivos móveis com HTML5, CSS3, AJAX, jquery e jquery UI 2a Edição Maurício Samy Silva Novatec

Ademir Ribeiro dos Passos

Blender 3D jogos e animações interativas Allan Brito

3ª Edição Nilo Ney Coutinho Menezes

Laravel Framework PHP Carga horária: 40 horas

Robson Santos da Silva

Indira Knight. Novatec

Programando com ASP.NET MVC. Aprenda a desenvolver aplicações web utilizando a arquitetura MVC. Alfredo Lotar. Novatec

Chris Binnie. Novatec

Ben Vinegar Anton Kovalyov

Jonathan Weber e a equipe da LunaMetrics

Criando Relatórios com PHP Pablo Dall Oglio

Introdução às. Expressões Regulares. Michael Fitzgerald. Novatec

Sérgio de Oliveira. Novatec

Maurício Samy Silva. Novatec

Adrian Pruteanu. Novatec

Objective-C Fundamental Christopher K. Fairbairn Johannes Fahrenkrug Collin Ruffenach

Edécio Fernando Iepsen

Novatec Editora Ltda

Raspberry Pi Manual do Usuário

4ª Edição Revisada e Ampliada Aurelio Marinho Jargas

Jessey Bullock Jeff T. Parker

Pedro Monteiro da Silva Eleutério Marcio Pereira Machado. Novatec

Jody Culkin e Eric Hagan

Aditya Y. Bhargava. Novatec

Matt Stauffer. Novatec

Ademir C. Gabardo. Novatec

Karl Matthias Sean P. Kane

Shelley Powers. Novatec

Vinícius Manhães Teles prefácio de Kent Beck colaborações especiais de Kent Beck e Robert Mee

Semmy Purewal. Novatec

Wellington Figueira da Silva. Novatec

Roni Antônio Mendes. Novatec

2ª Edição Cláudio Torres

Ricardo R. Lecheta. Novatec

Aprenda a Programar com Minecraft

Kenneth Reitz Tanya Schlusser

ADIANTI FRAMEWORK PARA PHP

Rodrigo de Barros Paes

Editor: Rubens Prates Revisão gramatical: Marta Almeida de Sá Editoração eletrônica: Carolina Kuwabata Assistente editorial: Priscila A.

Guia Prático Richard E. Silverman

Roberto Cohen. Novatec

Zend. Framework. Componentes Poderosos para PHP. Flávio Gomes da Silva Lisboa. Novatec

Novatec Editora Ltda

Ricardo R. Lecheta. Novatec

Primeiros Passos com Sensores Kimmo Karvinen Tero Karvinen

Aaron Newcomb. Novatec

Murillo Lo Visco. Novatec

Allan Liska e Timothy Gallo. Novatec

Guia Mangá. Álgebra Linear. Shin Takahashi, Iroha Inoue e Trend-Pro Co., Ltd. novatec

Adrian Mouat. Novatec

Guia Mangá Circuitos Eletrônicos

Primeiros Passos com o Arduino

Daniel Marcos Cunha Pereira

desenvolva aplicações web profissionais com uso dos poderosos recursos de estilização das css3 Maurício Samy Silva

Segurança em Redes sem Fio

Métricas. Como melhorar os principais resultados de sua empresa. Martin Klubeck. Novatec

Arduino Básico Michael McRoberts

Desenvolvendo Websites com PHP

Adrian Mejia. Novatec

JavaScript. de Alto Desempenho. Nicholas C. Zakas. Novatec

Expressões Regulares Cookbook Jan Goyvaerts Steven Levithan

Christopher Duffy. Novatec

Análise de Regressão

Copyright 2015 da Novatec Editora Ltda.

4ª Edição Revisada e Ampliada Allan Brito

2ª Edição Décio Heinzelmann Luckow Alexandre Altair de Melo

ADIANTI FRAMEWORK PARA PHP

2ª edição. Daniel Adorno Gomes. Novatec

Guia Mangá. Microprocessadores. Michio Shibuya, Takashi Tonagi e Office Sawa. Novatec

Criando Aplicações PHP com. Zend e Dojo. Flávio Gomes da Silva Lisboa. Novatec

Wolfram Donat. Novatec

WordPress - Criação de Sites Carga horária: 40 horas

Transcrição:

Ademir C. Gabardo Novatec

Copyright 2017 da Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer processo, sem prévia autorização, por escrito, do autor e da Editora. Editor: Rubens Prates PY20170308 Revisão gramatical: Marta Almeida de Sá Editoração eletrônica: Carolina Kuwabata Capa: Carolina Kuwabata ISBN: 978-85-7522-550-9 Histórico de impressões: Março/2017 Primeira edição Novatec Editora Ltda. Rua Luís Antônio dos Santos 110 02460-000 São Paulo, SP Brasil Tel.: +55 11 2959-6529 E-mail: novatec@novatec.com.br Site: www.novatec.com.br Twitter: twitter.com/novateceditora Facebook: facebook.com/novatec LinkedIn: linkedin.com/in/novatec

Sumário Prefácio...11 Capítulo 1 Introdução...13 Para quem é este livro?...13 Para quem não serve este livro?...13 O que é um framework?...14 O que é o Laravel?...14 Porque Laravel?...15 Antes de instalar o Laravel...17 Obtendo um servidor HTTP local com suporte ao PHP...17 Gerenciador de pacotes Composer...20 Instalando o Composer no Windows...21 Instalando o Composer no Mac OS X e Linux... 22 Um editor de textos eficiente... 22 Instalando e rodando o Laravel em seu ambiente local... 23 Documentação oficial do Laravel...26 Logs e depuração de erros no Laravel...27 Outros recursos interessantes sobre Laravel...30 Capítulo 2 O que é MVC e a estrutura de pastas do Laravel...32 O que é MVC...32 Criando recursos com o terminal...33 Lista de comandos Artisan disponíveis...35 A estrutura de pastas do Laravel...37 Primeiros testes, entendendo as rotas...39 Boas práticas e nomenclatura de arquivos... 46 Capítulo 3 Construindo um catálogo de produtos com Laravel...47 Definindo a estrutura dos produtos...47 Criando o banco de dados...48 Configurando a conexão do Laravel com o banco de dados...49 Criando o model e o arquivo de migration...51 7

8 Laravel para Ninjas Criando a rota e o controller para exibir produtos...54 Criando as primeiras views com o Laravel...56 Adicionando o Bootstrap, criando um layout e estendendo as primeiras views...59 Criando novos produtos... 64 Adicionando o método create() ao controller... 64 Criando a view com o formulário... 64 Gravando os dados de um novo produto no banco de dados...68 Validando os dados de formulários...69 Traduzindo as mensagens de erro do Laravel...75 Alterando dados de produtos...76 Adicionando fotos aos produtos...81 Excluindo um produto... 84 Adicionando uma barra de busca ao catálogo de produtos...87 Criando paginação com o Laravel...89 Um pouco mais sobre rotas adicionando links em português... 90 Proteção contra CSRF (Cross-Site Request Forgery)...92 Helpers (funções auxiliares) do Laravel...92 Capítulo 4 Autenticação de usuários no Laravel...93 Primeiros passos...93 Protegendo conteúdos nas views...97 Capítulo 5 Criando um aplicativo (Single Page and Mobile first) e uma API RESTful...102 Preliminares...102 Representational State Transfer (REST)...103 Instalando o Laravel...104 Criando o banco de dados e o Model...105 Criando as rotas e o controller...109 Adicionando o framework Angular e criando a view...111 Criando o controller do Angular...113 Mostrando os resultados com ng-repeat... 114 Criando novas tarefas...116 Alterando o status de uma tarefa...119 Excluindo uma tarefa...122 Adicionando autenticação à API com Token...126 Alterando a rota...127 Criando o token de acesso...128 Acessando a API com o token...130

Sumário 9 Capítulo 6 Enviando e-mails com Laravel... 133 Enviando e-mails com Mailgun...133 Instalando a biblioteca HTTP Guzzle...133 Criando uma conta no provedor de serviços Mailgun...134 Ajustando as configurações do Laravel...135 Atualizando o arquivo de rotas...137 Atualizando o controller...138 Criando a view do formulário e do corpo do e-mail...139 Testando o envio de e-mails...140 Enviando e-mails com Laravel utilizando o Gmail como servidor SMTP... 141 Capítulo 7 Mais sobre bancos de dados e sobre o Eloquent ORM...143 Eloquent ORM...143 Convenções e nomenclatura de tabelas...144 Alguns dos métodos do Eloquent...145 Funções de agregação...146 Acessando campos específicos de uma tabela... 147 Filtros e buscas... 147 Como inspecionar as cláusulas SQL geradas?...149 Tratando exceções se a consulta não retornar nenhum resultado...151 Acessando dados em múltiplas tabelas...152 Criando migrations e o seeder...153 Lendo dados de duas tabelas em uma única consulta com o Eloquent...155 Executando consultas SQL sem o Eloquent...157 Excluindo registros com segurança, soft deleting...159 Capítulo 8 Executando testes com o Laravel...162 Estrutura de arquivos e um teste de exemplo...162 Criando novos testes...164 Interagindo com formulários...166 Testes com banco de dados (testes de integração)...167 Considerações finais sobre testes...172 Capítulo 9 Publicando sua aplicação com Laravel...173 Criando um servidor virtual com o Apache... 174 Publicando com Laravel em hospedagem compartilhada...177 Com link simbólico para a pasta public...177 Movendo os arquivos de public para public_html...177 Não redirecione acesso com.htaccess...178

10 Laravel para Ninjas Outros cuidados durante a publicação...179 Verifique os arquivos ocultos...179 Gere uma chave de encriptação para o servidor de produção...179 Por que não exibir mensagens de erro em ambiente de produção...179 Otimizando a performance do website ou aplicativo...181 Usando um.htaccess mais eficiente...181