2006年07月24日

CakePHP 進階資料檢驗..



一般來說 CakePHP 中,在 model->save() 的時候,會自動根據$model->validate 的陣列進行檢查,若是沒通過則不會 Save 會丟回來一個 false 。

但是我們若是只想要檢查而沒有要存檔呢?

又或者我們自訂 errorTag 要怎麼顯示呢?


第一個問題可以從 Model 的 function 中找到解答

你可以用 $model->validates($data_array) 進行檢查。

而檢查完成後也是從 $controller->validateErrors($this->Model) 來assign 指定的 model 的錯誤檢查錯誤訊息回報。

另外若是有特殊的 errorTag 則可以用 $model->invalidate('tag_name') 來指定顯示...下面是一個檢查使用者帳號重複後的指定範例。

if ($this->find("username = '".$data['Member']['username']."'")) {
$this->invalidate('username_inuse');
return false;
}


Posted by darkhero at 樂多Roodo! │23:36 │回應(0)引用(0)CakePHP
樂多分類:網路/3C 工具:編輯本文
Ads by Roodo! 

引用URL

http://cgi.blog.roodo.com/trackback/1926086