[cakephp4] dirtyとoriginal
$entity = $this->patchEntity($entity, $data);
patchEntityすると、変更したところと、変更前の内容が取れる。
dirtyとoriginal。
$entity = $this->patchEntity($entity, $data); $dirty = $entity->getDirty();
$dirtyには変更したところの配列が入る。
$entity = $this->patchEntity($entity, $data); $original = $entity->getOriginal();
しかしoriginalは同様には動かず、上記だと$originalにentityがそのまま入る。
getOriginalは、フィールドを指定しないと駄目らしい。
$original = $entity->getOriginal('name');
例えば、こんな感じ。
ちなみに配列は受付けてなくて、フィールド一つだけみたい。
$entity = $this->patchEntity($entity, $data); $dirty = $entity->getDirty(); $original = $entity->getOriginal($dirty);
こんなことをしても駄目だった。
cakephp3も同じなのかな?調べてない。
以上、日本語の情報が見当たらなかったのでメモです。
前の記事: BaserTestCaseで特定プラグインの有無でfixturesを振り分ける
次の記事: 【二種免許】深視力検査合格のコツや裏技
2021/09/14 | 開発記録
コメント/トラックバック
トラックバック用URL:
この投稿のコメント・トラックバックRSS