Criando um blog com o CakePHP 2.2.1

Este tutorial visa a criação de um pequeno blog como aplicativo de exemplo no Framework CakePHP, versão 2.2.1. Ele é bem resumido e em português, seguindo os passos da documentação oficial. Também compartilho o script final que criei na elaboração do tutorial. O intuito deste artigo é facilitar os primeiros passos com o Framework CakePHP.

[ Hits: 20.622 ]

Por: Ribamar FS em 20/07/2012 | Blog: http://ribafs.org


Criando posts



Criando um post e um controller

Para, por exemplo:

Configure::write('Security.salt', 'teste');


Também a linha 192:

Configure::write('Security.cipherSeed', '76859309657453542496749683645');


Para, por exemplo:

Configure::write('Security.cipherSeed', '123456');


Agora, acesse o site e tecle F5: http://localhost/blog

Os notices devem desaparecer.

Caso esteja usando GNU/Linux, talvez precise ajustar permissões no app/tmp.

Na dúvida, veja:

Ativando o módulo mod_rewrite

Se tiver dúvida, veja:

Criando um Post do Model

Crie o arquivo: app/Model/Post.php

Contendo:

<?php
class Post extends AppModel {
}


Cake deve dinamicamente criar um objeto model para você, caso ele não encontre um arquivo correspondente em app/Model.

Criar um Post do Controller

O controller é onde toda a lógica de negócios, para a interação com o Post, deve aparecer.

Criar o arquivo: app/Controller/PostsController.php

Inicialmente contendo:

<?php
class PostsController extends AppController {
   public $helpers = array('Html', 'Form');
}


Vamos adicionar uma 'ação/action' para o controller:

<?php
class PostsController extends AppController {
   public $helpers = array('Html', 'Form');

   public function index() {
      $this->set('posts', $this->Post->find('all'));
   }
}


Mais sobre Controllers:

Criando um post do Viewer

Esta é a camada de apresentação que pode conter HTML misturado com PHP, ou XML, CVS e até dados binários.

Crie o arquivo: app/View/Posts/index.ctp

Contendo:

<h1>Blog posts</h1>
<table>
    <tr>
       <th>Id</th>
       <th>Title</th>
       <th>Created</th>
    </tr>

    <!-- Here is where we loop through our $posts array, printing out post info -->

    <?php foreach ($posts as $post): ?>
    <tr>
       <td><?php echo $post['Post']['id']; ?></td>
       <td>
          <?php echo $this->Html->link($post['Post']['title'],
array('controller' => 'posts', 'action' => 'view', $post['Post']['id'])); ?>
       </td>
       <td><?php echo $post['Post']['created']; ?></td>
    </tr>
    <?php endforeach; ?>

</table>


Detalhes em:
Edite o PostsController.php, e deixe assim:

<?php
class PostsController extends AppController {
    public $helpers = array('Html', 'Form');

    public function index() {
       $this->set('posts', $this->Post->find('all'));
    }

    public function view($id = null) {
       $this->Post->id = $id;
       $this->set('post', $this->Post->read());
    }
}


Página anterior     Próxima página

Páginas do artigo
   1. Banco de dados - Configuração do banco
   2. Criando posts
   3. Validação dos dados
   4. Excluindo posts - Rotas
Outros artigos deste autor

Lista de extensões preferidas para Joomla!

Leitura recomendada

Gráficos em PHP Highcharts

Migração de dados no Joomla

Lista de extensões preferidas para Joomla!

JOOMLA no openSUSE em 10 passos

Requisições assíncronas em PHP usando AJAX - Parte I

  
Comentários
[1] Comentário enviado por rony_souza em 20/07/2012 - 16:45h

Excelente tutorial!

[2] Comentário enviado por ribafs em 20/07/2012 - 16:47h

Muito grato pela força caro Rony!

[3] Comentário enviado por adrianoc em 15/10/2012 - 23:08h

Parabéns pelo artigo, gostaria de recomendar estes sites para um melhor suporte, http://book.cakephp.org/


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts