2010-11-28 7 views
0

를 던져. URL에있는 내용과 정적 내용 페이지가 무엇인지 알 수없는 경우 404를 표시하려고합니다.알 수없는 오류가 내 공개 페이지에 대한 의미 일반 페이지 요청을 처리 나의 컨트롤러 방법이 404 페이지

그래서 나는이 작업을 수행 :

$opts = array(
'name' => 'Some message', 
'code' => 404, 
'message' => 'Your message here', 
'base' => $this->base 
); 
$this->layout = 'blank'; 
$this->cakeError('error', array($opts)); 

나는 404 요청이 오류가 발생하는 문제 :

공지 사항 (8) : 정의되지 않은 변수 : 자바 스크립트 [APP \ 전망 \ 레이아웃 \ default.ctp, line 10]

"$ this-> layout = 'blank';" CSS, JS 등을 포함하지 않는 빈 레이아웃 파일로 리디렉션하려는 시도입니다.하지만 JS를 포함하는 기본 템플릿을 완전히로드하고 무시하고 있습니다. 404 페이지를로드하는 오류 루틴은 오류의 소스 인이 메소드에 액세스 할 수 없다고 추측합니다.

그러나 나는이 오류와 함께 어떻게 거래를 알아낼 수 없습니다.

답변

2

먼저, 코드의 작은 버그가 있습니다. cakeError()에 대한 두 번째 매개 변수는 이미 배열입니다. 그것은해야한다 : 당신은 빈 레이아웃을 원하는 경우

$this->cakeError('error', $opts); 

둘째, 당신은

$this->layout = false; 

을 설정할 수 있습니다.

+0

감사합니다. 나는 다른 사람의 질문에 더 분명하게 물었다. – Justin