04/04/2013
CAKEPHP
Yuri Karsten B. de Medeir Med eiros os – P8 Computação/UNIPÊ
O CAKEPH CAKEP HP O CakePHP é um framework de desenvolvimento rápido para PHP, livre e de Código aberto. O objetivo é permitir que você trabalhe de form fo rmaa es estr trut utur urad adaa e rá rápi pida da se sem m pe perd rder er a fl flex exib ibil ilid idad ade. e. O CakePHP tira a monotonia do desenvolvimento web. O CakePHP fornece todas as ferramentas que você precisa para começar programando o que realmente deseja: a lógica específica da sua aplicação. Em vez de reinventar a roda a cada vez que se constrói um novo projeto, pegue uma cópia do CakePHP e comece com o interior de su suaa ap apli lica caçã ção. o.
1
04/04/2013
Abaixo segue uma pequena lista dos recursos que você poder desfrutar no CakePHP: Comunidade
ativa e amigável Licença flexível Compatível com o PHP 5.2.6 e superior CRUD integrado para interação com o banco de dados
Abaixo segue uma pequena lista dos recursos que você poder desfrutar no CakePHP: Comunidade
ativa e amigável
https://groups.google.com/forum/?hl=pt-PT&fromgroups#!forum/cakephp-pt Licença
flexível Compatível com o PHP 5.2.6 e superior CRUD integrado para interação com o banco de dados
2
04/04/2013
Scaffolding
para criar protótipos Geração de código Arquitetura
MVC Requisições feitas com clareza, URLs e rotas customizáveis
Scaffolding
para criar protótipos O recurso de scaffold de aplicações é uma técnica que permite ao desenvolvedor definir e criar uma aplicação básica que possa inserir, selecionar, atualizar e excluir objetos (operações CRUD). Scaffold no CakePHP também possibilita que os desenvolvedores definam como os objetos estão relacionados entre si além de como criar e destruir estas relações. Geração de código Arquitetura MVC Requisições feitas com clareza, URLs e rotas customizáveis
3
04/04/2013
Validações
embutidas Templates rápidos e flexíveis (Sintaxe PHP, com helpers) Helpers
para AJAX, JavaScript, formulários HTML e outros Componentes de Email, Cookie, Segurança, Sessão, e Tratamento de Requisições
Controle
de Acessos flexível Limpeza dos dados Sistema de Cache flexível Localização Funciona a partir de qualquer diretório do website, com pouca ou nenhuma configuração do Apache
4
04/04/2013
CONFIGURANDO O NOTEPAD++ NO WINDOWS No Windows em C:\Users\SeuNome\AppData\Roaming\Notepad++\langs.xml Antes: Depois:
DOWNLOAD
http://cakephp.org/
5
04/04/2013
INSTALAÇÃO Descompactar o arquivo cakephp-cakephp-2.3.1-0-g48149cb em C:\wamp\www
6
04/04/2013
INSTALAÇÃO : essa pasta é onde você irá trabalhar, nela serão armazenadas toda a lógica, imagens, arquivos de estilos (CSS) e comportamentos (Javascript) do site. : pasta que contém o núcleo (conhecido como “core”) do CakePHP, nela estão armazenadas as principais classes e componentes do framework. Nenhum arquivo deve ser alterado aqui pois caso você atualize a versão do Cake todas alterações serão perdidas. : diretório responsável por armazenar plugins (mini aplicações do CakePHP) de terceiros. : pasta responsável por armazenar bibliotecas e classes externas para serem utilizadas no projeto, como por exemplo uma classe para redimensionamento de imagens. : arquivo de configuração do servidor Apache responsável por fazer reescrita de urls (usando mod_rewrite do Apache que deve estar ativo). Ele encaminha todas requisições feitas nesse diretório para “app/webroot/”. Se você acessar “http://localhost/first-project/some_file.php” no navegador por exemplo, o Cake irá procurar o arquivo “some_file.php” dentro da pasta “app/webroot/” invés de “app/”.
ANTES DE TESTAR NO NAVEGADOR Acesse a pasta app/Config/ : arquivo responsável por armazenar principais configurações do projeto como: nível de debug, cache, logs, sessões e etc. Abra o arquivo e substitua o valor atual da “ ” e “ ” para qualquer string randômica (aperte qualquer letra e número), esses campos servem para serem incluídos nas criptografias geradas pelo Cake, deixando mais difícil a decodificação.
7
04/04/2013
ANTES DE TESTAR NO NAVEGADOR database.php.default: arquivo responsável por armazenar as configurações de acesso ao banco de dados. Aproveitando que estamos aqui , crie um banco de dados no MySQL ou outro que quiser (o CakePHP atualmente suporta M ySQL, PostgreSQL, SQLite e SQL Server), abra o arquivo “database.php.default”, digite o endereço do banco em “host”, usuário em “login”, senha em “password”, nome do banco em “database” e o qual fonte de dados você usará em “datasource” (você encontra uma lista desse último no próprio arquivo), salve e renomei o arquivo para “database.php” para ativar a conexão com banco de dados. - email.php.default: arquivo responsável por armazenar configurações para envio de e-mails através da classe CakeEmail . - routes.php: arquivo responsável por defini r as rotas de nossa aplicação.
CONFIGURAÇÃO NO WINDOWS Em Painel de Controle\Sistema e Segurança\Sistema > configurações avançadas do sistema > variáveis de ambiente > variáveis do sistema > Editar Path C:\wamp\bin\php\php5.3.13; C:\wamp\www\cakephp\app\Console;
8
04/04/2013
ROTAS, REQUISIÇÕES E LAYOUTS Para começar, temos o layout. Mas o que é layout no Cake? Layout nada mais é do que o HTML da sua aplicação que não muda entre todas as páginas, nele definimos normalmente o cabeçalho, menu principal, rodapé e aplicamos as folhas de estilos (CSS) e arquivos Javascript usados em todo o site. A função do layout é facilitar a manutenção, permitindo que tenhamos apenas um arquivo de estrutura básico para manter.
PRIMEIRA APLICAÇÃO CAKEPHP Acesse a pasta “app/View/Layouts” e abra o arquivo “default.ctp”, remova o conteúdo e cole o código abaixo:
9
04/04/2013
PRIMEIRA APLICAÇÃO CAKEPHP Acesse “app/View/” e exclua a pasta “Pages” e “app/Controller/” e exclua o arquivo ”PagesController.php”.
vá
até
Crie um arquivo com nome “HomeController.php” dentro da pasta “app/Controller/”, defina nossa action “index” e crie a pasta “Home” dentro de “app/View/” e nela crie nossa view “index.ctp”.
PRIMEIRA APLICAÇÃO CAKEPHP Crie o arquivo “app/View/Home/ salve.
” e digite Olá Mundo e
Agora é só testar!!
10
04/04/2013
CRIANDO O PRIMEIRO BOLO COM O CAKE BAKE
CRIANDO O PRIMEIRO BOLO COM O CAKE BAKE
11
04/04/2013
REFERÊNCIAS BIBLIOGRÁFICAS Cookbook 2.x - Disponível em: Acesso em: março 2013. Blog Glauco - Disponível em: Acesso em: março 2013.
CAKEPHP
Yuri Karsten B. de Medeiros – P8 Computação/UNIPÊ
12