CakePHP 2.0.2에 문제가 있습니다. "프로필 수정"작업을 만들고 싶습니다. 여기'프로파일 편집'동작 만들기 CakePHP 2.0?
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');
?>
그러나, 아무 일이 일어날 것 같다 여기 내 컨트롤러 액션입니다. 나는 아무런 성공 메시지도 얻지 못했고 오류 메시지도받지 못했다. if ($this->User->save($this->request->data))
을 보완하는 else 문을 넣으면 해당 코드 블록이 실행되어 User
모델 데이터가 저장되지 않았 음을 나타냅니다.
어디로 잘못 가고 있습니까?
유효성 검사 규칙에 "필수"속성이주의해야합니다. 2.x에서는 쉽게 잘못 될 수 있습니다. "allowEmpty"만 사용하는 것이 더 좋으며 - 허용 목록도 있습니다. – mark