Don't you speak portuguese? Translate this site with Google Translator

Pensamento do Dia

Só é útil o conhecimento que nos torna melhores. (Sócrates)

13.2 – Aplicativo Blog

13.2 – Aplicativo Blog

 

Só fracassa quem desiste de lutar, quem para de tentar, por isso quando cair lembre-se que reerguer-se já é uma vitória.

 

Criando um Blog Simples em CakePHP 3

Pré-Requisitos

PHP 5.5.9 com pdo_mysql, intl e mbstring (no terminal digite php -v)

Apache 2

MySQL 5

 

Caso tenha o cRUL instalado use:

curl -s https://getcomposer.org/installer | php

sudo mv composer.phar /usr/local/bin/composer

 

Instalar no Windows

http://book.cakephp.org/3.0/en/installation.html

 

Criar uma nova aplicação do Cake:

composer create-project --prefer-dist cakephp/app cakeblog

 

O comando acima criou a estrutura de arquivos e diretórios básicos de um aplicativo chamado cakeblog.

Criar o banco cake_blog

Configurar o banco em config/app.php

Configure seu Apache para que tenha suporte ao mod_rewrite.

Model

Após criar um model (modelo) no CakePHP, nós teremos a base necessária para interagirmos com o banco de dados e executar operações.

Os arquivos de classes, correspondentes aos models, no CakePHP estão divididos entre os objetos Table e Entity. Objetos Table provêm acesso à coleção de entidades armazenada em uma tabela e são alocados em src/Model/Table. Entity em src/Model/Entity.

 

Configurando rotas:

config/routes.php

$routes->connect('/', ['controller' => 'Articles', 'action' => 'index']);

 

Gerando código com bake:

bin/cake bake all Articles

 

Executar para criar um arquivo de migração:

bin/cake bake migration CreateArticles title:string body:text category_id:integer created modified

 

Criar uma tabela de categorias:

bin/cake bake migration CreateCategories parent_id:integer lft:integer[10] rght:integer[10] name:string[100] description:string created modified

 

Criar as tabelas

bin/cake migrations migrate

 

Abra o arquivo src/Model/Table/ArticlesTable.php e adicione o seguinte:

// src/Model/Table/ArticlesTable.php
namespace App\Model\Table;
use Cake\ORM\Table;

class ArticlesTable extends Table
{
    public function initialize(array $config)
    {
        $this->addBehavior('Timestamp');
        // ADICIONE AS 3 LINHAS ABAIXO PARA RELACIONAR AS DUAS TABELAS
        $this->belongsTo('Categories', [
            'foreignKey' => 'category_id',
        ]);
    }
}

Para Gerar código

bin/cake bake all Categories

 

Acesse

http://localhost/cakeblog

 

Adicione alguns registros e veja como funciona.

Acesse

http://localhost/cakeblog/categories

Comments fornecido por CComment

Novo Testamento

E vos acontecerá isto para testemunho.
(Lc, 21:13)

Rotas no Mapa do Google

© 2015 Ribamar FS. All Rights Reserved. Designed By JoomShaper