#バドシス 〜 日々のことを続く限り書いてみようと思って 〜

頑張って日々のことを書いていこうと思います。

【CAKEPHP3】CAKEPHP2から移行した時のメモ

CAKEPHP2から移行するときのメモをまとめていきます。

お作法とか結構違うので色々注意が必要ですね。

 

PHPフレームワーク CakePHP 3入門

 

beforeFilter

『beforeFilter』を使う時、Controllerに定義が必要です。

 

実装例

use Cake\Event\Event;

 

public function beforeFilter(Event $event) {
    parent::beforeFilter($event);
}

 

ControllerからのModel呼び出し

CakePHP2の時は

 

App::uses('HogeModel','Model/Manager');
$this->model = new HogeModel(
    $this->HogeModel
);

 

のように書いていましたが、

 

$this->model = TableRegistry::getTableLocator()->get('HogeModel');

 

のように書けばOKです。

 

Modelでの厳密な保存(saveOrFail)

ModelでSaveをする時、saveOrFailメソッドを用いることで厳密な保存が可能になる。

 

try {
$table->saveOrFail($entity);
} catch (\Cake\ORM\Exception\PersistenceFailedException $e) {
echo $e->getEntity();
}

 

参考:データの保存 - 3.6

 

 

PHPフレームワーク CakePHP 3入門

PHPフレームワーク CakePHP 3入門