save()
時に例外的に更新日など、特定のカラムをアップデートしたくない場合があります。
Cake2: save時に更新しない
$data['ModelName']['updated'] = false;
Cake2では配列に対象モデルとカラム名をキーとして指定し、false
を代入しておくことで、save()
時に更新しないようにできていました。
Cake4: save時に更新しない
$data->setDirty('updated', false);
Cake4では newEntity()
などで作成したエンティティに対し、setDirty()
を利用し、第一引数にカラム名、第二引数に false
を設定することで更新対象から除外することができます。
これで更新したくない任意のカラム名を指定することで、更新対象を除外することができますね。