コンポーネント
コンポーネントの読み込みと設定
initializeメソッド内でloadComponentを使用する。
<?php class PostsController extends AppController { public function initialize() { parent::initialize(); $this->loadComponent('Auth', ['authorize' => 'Controller']); $this->loadComponent('Cookie', ['expires' => '1 day']); } } ?>
あるいは、configによって実行時にコンポーネントを設定できる。
<?php class PostsController extends AppController { public function beforeFilter(Event $event) { $this->Auth->config('loginAction', ['controller' => 'Users', 'action' => 'login']); $this->Cookie->config('name', 'CookieMonster'); } } ?>
コンポーネントの使用
<?php class PostsController extends AppController { public function initialize() { parent::initialize(); $this->loadComponent('Flash'); } public function delete() { if ($this->Post->delete($this->request->getData('Post.id')) { $this->Flash->success('Post deleted.'); // Flashコンポーネントの使用 return $this->redirect(['action' => 'index']); } } } ?>