2010-12-01 2 views
0

이 할 수있는 다음에서 올바르지 경로 :CakePHP는 1.3 라우팅 문제

Router::connect('/ctl/act/subact/:mode/:sort'  
, array('controller' => 'ctl', 'action' => 'act_subact', 
'mode' => null , 'sort' => null)); 

-

$html->link('go',array('controller'=>'ctl','action'=>'act_subact')) 

-

<a href="/ctl/act_subact/">go</a> 

내가 어떻게 할 수 있습니까? 봉투 : 아파치에 CakePHP의 1.3.6 php5.2.5가

답변

2

라우트 /ctl/act/subact/:mode/:sort:mode:sort 매개 변수가해야한다는 것을 의미합니다. 이 경로는 URL /ctl/act/subact/과 일치하지 않습니다. 선택적 매개 변수가있는 경우 별표가있는 매개 변수를 나타내야합니다 (/ctl/act/subact/*). 이 경로는 URL /ctl/act/subact/, /ctl/act/subact/foo/ctl/act/subact/foo/bar과 일치합니다. 당신이 명명 된 매개 변수 이러한 선택적 매개 변수를해야하는 경우

, 각 가능 "길이"에 대한 여러 경로를 만들어야합니다 :

Router::connect('/ctl/act/subact/:mode/:sort', array('controller' => 'ctl', 'action' => 'act_subact', 'mode' => null, 'sort' => null)); 
Router::connect('/ctl/act/subact/:mode', array('controller' => 'ctl', 'action' => 'act_subact', 'mode' => null)); 
Router::connect('/ctl/act/subact/', array('controller' => 'ctl', 'action' => 'act_subact'));