completed
변수 (텍스트)가있는 Horse
개체가 있습니다. 보기에서 set complete
을 클릭 한 다음 해당 말의 completed
변수를 "예"로 설정할 수 있기를 원합니다. 이 후 사용자를 작업/색인으로 리디렉션합니다. 내 생각은 컨트롤러에 setcomplete($id)
함수를 만드는 것입니다. 따라서 /setcomplete/4
을 전달할 수 있으며 해당 말의 플래그가 변경됩니다.AppController에서 단일 변수 값 변경
나는 기본보기를 만들었지 만,보기가 필요 없다는 생각이 들지만 그걸 어떻게 해결 해야할지 모르겠다. ... $this->render()
또는 이와 비슷한 것을 사용하려고 생각했다. .
이것은 기본 코드입니다 ... id를 전달한 다음 변수를 변경 한 다음 tasks/index로 리디렉션합니다.
오류가 발생하지 않습니다 .... 그저 작동하지 않습니다. 그게 전부입니다.
public function setcomplete($id = null) {
if (!$this->Task->exists($id)) {
throw new NotFoundException(__('Invalid task'));
}
if ($this->request->is(array('post', 'put'))) {
$this->set('completed', 'yes');
if ($this->Task->save($this->request->data)) {
$this->Session->setFlash(__('The task has been updated.'));
return $this->redirect(array('action' => 'index'));
} else {
$this->Session->setFlash(__('The task could not be saved. Please, try again.'));
}
} else {
}
}
어떤 행동을합니까? 그러나'$ this-> layout = $ this-> autoRender = false;'는 누락 된 뷰에 대한 에러를 발생시키지 않도록합니다. – Kai
전혀 동작이 보이지 않습니다. 아주 기본적인 뷰를 설정했고 거기에 있지만 변수가 변경되지 않습니다. 이것이 내가 원하는 것입니다. –
저장하고 결과를 게시하는 행 위에'debug ($ this-> request-> data)'를 추가 할 수 있습니까? 문제를 정확히 찾아내는 데 도움이 될 수 있습니다. –