Pages

2014年1月11日土曜日

CakePHP2 Shell 実行時にモデルでエラーが発生する

/app/Console/Command 内に **Shell.php ファイルを作成して
uses にモデルを追加したところで試しに

$this->out('Hello');

でも出力しようと試したところで、下記のようなエラーが発生。

Fatal error: Class 'I18n' not found in /***/***.php on line 462
Fatal Error Error: Class 'I18n' not found in [/***/***.php, line 462]

モデルの中を全てコメントアウトすると表示されなかったので、
メソッド毎に徐々にコメントアウトを解除すると、 afterFind が原因である事が判明。

誤:
public function afterFind($results) {}

正:
public function afterFind($results, $primary = false) {}

上記修正で解決。

Followers