PostController.php: editの関数を追記します。requestはpostにpatch, putを追加することが推奨されています。
public function edit($id = null) { $post = $this->Posts->get($id); if ($this->request->is(['post', 'patch', 'put'])) { $post = $this->Posts->patchEntity($post, $this->request->data); if($this->Posts->save($post)){ $this->Flash->success('Edit Success!'); return $this->redirect(['action'=>'index']); } else { $this->Flash->error('Edit Error!'); } } $this->set(compact('post')); }
edit.ctp: addと同じようにviewを作成します。buttonはUpdateになります。
<?php $this->assign('title', 'Edit Post'); ?> <h1> <?= $this->Html->link('Back', ['action'=>'index'], ['class'=>['pull-right', 'fs12']]); ?> Edit Post </h1> <?= $this->Form->create($post); ?> <?= $this->Form->input('title'); ?> <?= $this->Form->input('body', ['row'=>'3']); ?> <?= $this->Form->button('Update'); ?> <?= $this->Form->end(); ?>