Linux slogan
Visite também: BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
Linux: red shot
Por montaro
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha



Artigo

Criando um blog com o CakePHP 2.2.1
Linux user
ribafs
20/07/2012
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.
Por: Ribamar FS | Blog: http://ribafs.org
[ Hits: 6904 ]
Conceito: 10.0   3 voto(s)3 voto(s)3 voto(s)3 voto(s)3 voto(s) + quero dar nota ao artigo

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

Outros artigos deste autor

Leitura recomendada

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


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.