CakePHP2.0.2に問題があります。「プロファイルの編集」アクションを作成したいと思います。これが私のコントローラーのアクションです:
public function edit_profile() {
if ($this->request->is('get')) {
$this->request->data = $this->User->findById($this->Auth->user('id'));
} else {
if ($this->User->save($this->request->data)) {
$this->Session->setFlash(__('Your profile has been updated'));
}
}
}
そして、これが私の見解です:
<h2>Edit Profile</h2>
<?php
echo $this->Form->create('User');
echo $this->Form->input('id', array('type' => 'hidden'));
echo $this->Form->input('first_name');
echo $this->Form->input('last_name');
echo $this->Form->input('email');
echo $this->Form->end('Save Profile');
?>
しかし、フォームを送信しても何も起こらないようです。成功メッセージが表示されず、エラーメッセージも表示されません。を補完するためにelseステートメントを配置するとif ($this->User->save($this->request->data))
、そのコードブロックが実行され、User
モデルデータが保存されないことを示します。
どこが間違っているのですか?