Home > PHP | cakephp | スクリプト > [cakephp1.2]validate使用時の注意。[validate]

[cakephp1.2]validate使用時の注意。[validate]

cakephp1.1の時のように、

$this->yourmodel->validates($this->data);

とすると、cakephp1.2では

(Model::validates) Parameter usage is deprecated, set the $data property instead
Warning (512): [CORE/cake/libs/model/model.php, line 1647]

とWarningを吐きます。1.2では下記のようにしましょう。

if ($this->YourModel->create($this->data) && $this->YourModel->validates()) {
    // validation ok
} else {
    // validation not ok
}

また、新規登録時のvalidateルールを下記の様に設定するとする。

	var $validate = array(
				"name"=>array(
					array("rule"=>VALID_NOT_EMPTY)
				),
				"kana"=>array(
					array("rule"=>VALID_NOT_EMPTY)
				)
			)

でも、データ更新時にはvaidateルールから
「kana」のvalidateルールを除きたい場合は、

unset($this->YourModel->validate['kana']);

と書くよ。

Comments:1

add to hatena hatena.comment (1) add to del.icio.us (0) add to livedoor.clip (0) add to Yahoo!Bookmark (0) Total: 1

ちば 08-08-13 (水) 17:33

通りすがりCake Bakerです。
$this->MODEL->validates($this->data)してもなんだが1.2では素通りで常にtrue返してきて困っていたのですが、
この記事のおかげで助かりました。

ありがとうございました。(コメントするところ間違えました)

Comment Form
Remember personal info

Trackbacks:0

Trackback URL for this entry
http://ore.saizensen.net/archives/70/trackback
Listed below are links to weblogs that reference
[cakephp1.2]validate使用時の注意。[validate] from おれ最前線ねっと

Home > PHP | cakephp | スクリプト > [cakephp1.2]validate使用時の注意。[validate]

Search
Feeds
Meta

Return to page top