foldrr's weblog

旧ブログ http://d.hatena.ne.jp/foldrr/

CakePHPコントローラでバリデーションエラーを明示的に発生させる

コントローラが持っているモデルの invalidate() メソッドでエラーを明示的に発生させることができる。

コントローラ

<?php
class SomeController extends AppController {
    function do_something(){
        if(...){
            $this->ModelName->invalidate('フィールド名', 'エラーメッセージ');
        }
    }
}
?>

ビュー

<?php
<?php echo $form->error('フィールド名'); ?>  <!-- ここにエラーメッセージが表示される。 -->
?>