モデルにあるcreateメソッド。
if($this->Model->create($this->data) && $this->Model->validates()){
}
こんな感じにいっつもコントローラーで使ってたんだけど、
createした時に、引数の配列になかったデータはDBのデフォルト値を勝手にいれてくれるんだね。
その処理では変更しないカラムが、勝手にデフォルト値に戻っててびっくりした。
引数にnullかfalseを渡せば、デフォルト値は入れないみたい。
$this->BaseInfo->create(false);
if($this->Model->set($this->data) && $this->Model->validates()){
}
でもこう書くなら始めからsetだけでいいようなきもする。
if($this->Model->set($this->data) && $this->Model->validates()){
}
validationErrorsとかidを初期化したい時はcreateしなきゃいけないのかな。
なんとなく使ってたけど、createをちゃんと調べないといかんなこれは。
LIGはWebサイト制作を支援しています。ご興味のある方は事業ぺージをぜひご覧ください。