매개 변수가 URL을 통해 컨트롤러로 전달되지 않은 경우
-
26-12-2019 - |
문제
CakePHP에서는 매개 변수를 받아야하는 컨트롤러를 수행 한 다음 모델을 데이터베이스와 함께 작동하여 결과를보기에 표시합니다.꽤 일반적인 MVC 접근 방식.
특정 사용자와 연결되어야하는 "새 게시물 삽입"으로 컨트롤러를 상상해보십시오.
그래서 URL은 다음과 같아야합니다 : http://mysite/inspost/(user_id).
문제는 URL이 http://mysite/inspost/
user_id가 지정되지 않은 경우에도 동일한보기가 표시되며 새 게시물을 삽입합니다.
어떻게이 작업을 제어 할 수 있습니까?
해결책
블로그 자습서의 2 nd 페이지에서 레이어 추가 :
public function view($id = null) {
if (!$id) {
throw new NotFoundException(__('Invalid post'));
}
$post = $this->Post->findById($id);
if (!$post) {
throw new NotFoundException(__('Invalid post'));
}
$this->set('post', $post);
}
. 제휴하지 않습니다 StackOverflow