いろいろ備忘録

雑記です。

echo $this->Form->create($article);の$articleが必要な理由

ブログチュートリアル - パート2

echo $this->Form->create($article); は、

echo $this->Form->create();としても動いているようにみえるけれど、

ArticlesControllerのsaveで例外(DB接続失敗、バリデーションエラー等)が起きた際、

$article = $this->Articles->patchEntity($article, $this->request->getData());がセットされる。

すなわち、書き込もうとしたものの、失敗したデータが渡される。

一般的なサイトを思い浮かべてもらうと分かるように、書き込みが失敗した際は
もう一度同じページが表示され、フォームは書き込み失敗したデータで初期化されている。