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

Pensamento do Dia

Não há nada de nobre em sermos superiores ao próximo. A verdadeira nobreza consiste em sermos superiores ao que éramos antes.(Autor desconhecido)

Configurações do CakePHP 3

Configurações no CakePHP 3

Mesmo que as convenções nos livrem de estar efetuando muitas configurações no CakePHP,ainda assim precisamos configurar algumas coisas como bancos de dados, rotas e bootstrap (carga de plugins).

Todos os arquivos de configuração ficam na pasta config.

Os principais arquivos de configuração são: config/app.php

config/routes.php config/bootstrap.php

Nenhum dos 3 é obrigatório. Caso o aplicativo não use bancos de dados nem tenha plugins de terceiros não somos obrigados a alterar nenhum deles.

Quando o aplicativo usa bancos de dados precisamos alterar o app.php.

Quando desejamos personalizar as rotas também precisamos alterar o routes.php.

Quando o aplicativo usa plugins de terceiros o bootstrap.php.

app.php

Geralmente utilizado somente para configurar o banco de dados, mas existem muitas outras configurações nele. Vejamos algumas:

debug

encoding

dir – diretório da aplicação. Por default o src webroot

diretório base de imagens, css e javascript

salt – deve ser alterado. String usada no hash de senhas. Usando o composer ele já altera o salt

Error -

Email configuração

Datasources

Log

Session

Configurando o Banco de Dados

Para configurar o banco devemos indicar apenas o username, password e database na configuração default.

'Datasources' => [ 'default' => [

'className' => 'Cake\Database\Connection', 'driver' => 'Cake\Database\Driver\Mysql', 'persistent' => false,

'host' => 'localhost', /**

* CakePHP will use the default DB port based on the driver selected

* MySQL on MAMP uses port 8889, MAMP users will want to uncomment * the following line and set the port accordingly

*/

//'port' => 'non_standard_port_number', 'username' => 'root',

'password' => '', 'database' => 'blog', 'encoding' => 'utf8', 'timezone' => 'UTC', 'flags' => [], 'cacheMetadata' => true, 'log' => false,

Uma configuração importante aqui também é o driver do SGBD. O CakePHP 3 trabalha atualmente com os SGBDs: Mysql, Postgres, Sqlite e Sqlserver. Caso queira criar o aplicativo acessando um banco do PostgreSQL, então a linha driver assim:

'driver' => 'Cake\Database\Driver\Postgres',

Claro que também precisa alterar username, password e database.

routes.php

Neste arquivo você configura as rotas para os actions e controllers. Rotas são um importante mecanismo que permite que você conecte para diferentes URLs apenas escolhendo os controllers e seus actions.

Para uma configuração simples, suponha que você criou um aplicativo chamado cliente, que ficou na pasta cliente e criou os controllers e seus actions padrões: index(), view(), etc. Então vamos configurar o routes.php.

Logo que criou o controller ClientesController e seus actions e acessar o aplicativo assim:

http://localhost/cliente

Quem responderá é o action display do controller PagesController, que é um controller e action padrão, que já vem com o Cake e estão pré-configurados no routes.php como a rota padrão. Veja:

$routes->connect('/', ['controller' => 'Pages', 'action' => 'display', 'home']);

Para que seu controller Clientes seja mostrado juntamente com seus actions, precisamos dizer isso ao CakePHP,assim. Adicione esta linha antes da linha anterior:

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

Chame seu aplicativo novamente com:

http://localhost/cliente

Agora sim, ele mostra o resultado do action index() do controller Clientes.

Existem muitas configurações para as rotas. Para mais detalhes veja: http://book.cakephp.org/3.0/en/development/routing.html

 

bootstrap.php

Veja as mensagens iniciais que ele pode disparar, acusando que este é um dos arquivos iniciais no boot do CakePHP 3.

Observe que ele já vem com várias configurações prontas. Já vem com alguns plugins carregados, como o Migrations e o DebugKit.

Carregando Plugins

Caso queira carregar um plugin de terceiro precisa adicionar uma linha logo abaixo desta: Plugin::load('Migrations');

Supondo que precise carregar um plugin chamado Acl:


Plugin::load('Acl');

Checando para ver se uma configuração foi definida

static Cake\Core\Configure::check($key)

$exists = Configure::check('Company.name');

Deletando Configuração

static Cake\Core\Configure::delete($key) Configure::delete('Company.name');

Comments fornecido por CComment

Novo Testamento

Trazendo à memória a fé não fingida que em ti há, a qual habitou primeiro em tua avó Lóide, e em tua mãe Eunice, e estou certo de que também habita em ti.
(2Tm, 1:5)

Rotas no Mapa do Google

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