2013-04-11 5 views
1

CakePHP를 배우려고했지만 루트가 아닌 다른 루트에 액세스하려고하면 500 오류가 발생합니다. 내 테스트 애플 리케이션에 다음과 같은 설정했다.CakePHP : 500 루트 이외의 루트에서 오류가 발생했습니다.

1) 나는 다음과 같은 경로가 설정 한 /app/Config/routes.php 파일에서 /app/webroot/

2)에 http://cake.localhost.com/ 세트에 대한 문서 루트가 있습니다

Router::connect('/', array('controller' => 'posts', 'action' => 'index', 'index')); 
Router::connect('/posts/*', array('controller' => 'posts', 'action' => 'view')); 
Router::connect('/users/*', array('controller' => 'users', 'action' => 'view')); 

3) I 시스템을 만들 수 cake bake을 사용하고 그것은 발판을 사용하고 있습니다. 당신이 더 이상 정보가 필요하면 내가 http://cake.localhost.com/posts/view/1에 갈 때

4)는 HTTP Status Code 500

을 제공 제가 기꺼이 해줄 것 알려 주시기 바랍니다! 사전에 모든 정보 주셔서 감사합니다!

답변

1

전체 프레임 워크의 핵심 기능과 관련된 합법적 인 질문입니다.

1).

2.) 표시된대로 경로를 구성하면 모든 요청이 지정된 컨트롤러의보기 조치로 재 지정됩니다. 이것은 아마 당신이 염두에 두었던 것이 아닙니다.

Cake의 기본 라우팅은 명명 규칙에 따라 라우팅을 시도합니다. 라우팅 예제 및 해당 동작에 대한 설명은 CakePHP broken index method을 참조하십시오.

3) 스캐 폴딩은 아마도 당신이 염두에 두었던 것이 아닙니다. 스캐 폴딩은 기본적으로 코어 컨트롤러 생성 기본값을 사용하도록 스캐 폴딩 컨트롤러에 플래그를 지정하고 생성 된 코드를 실제로 쓰는 것을 건너 뜁니다. 기본값을 생성 할 수도 있습니다. 기본 CRUD, Cake 스타일에 대한 아이디어를 줄 것입니다.

앱을 복제하고이 단계를 적용하면 모든 것이 예상대로 작동했습니다. :) HTH

관련 문제