2014-12-07 3 views
1

동일한 URL으로 라우트하려는 두 개의 다른 컨트롤러가 있습니다.동일한 이름의 CodeIgniter 라우트

,

$route['dashboard/(:any)'] = 'admin/crud/$1'; 
$route['dashboard/(:any)'] = 'admin/dashboard/$1'; 

을하지만 404 에러를 유발한다.

:any 와일드 카드에 문제가있는 것 같습니다.

사용할 수있는 대안이 있습니까?

답변

0

CodeIgniter 컨트롤러를 URL에 매핑하지 않으면 컨트롤러에 URL을 매핑합니다. URI Routing을 참조하십시오.

두 개의 동일한 정확한 URL을 다른 위치로 매핑하려고합니다. 이것은 말이되지 않습니다.

또한 $route은 연관 배열이므로 추가 경로를 추가하는 대신 값을 덮어 쓰게됩니다. , 관리자가 실제로있는 폴더, 값이 경로로 전달되고 있음을 다시 확인입니다

$route['dashboard/(:any)'] = 'admin/dashboard/$1'; 

이후 : 그냥 두 번째 경로에 문제가있는 것처럼

$route['dashboard/(:any)'] = 'admin/crud/$1'; 
$route['dashboard/(:any)'] = 'admin/dashboard/$1'; //Immediately over writes the previous value 

그래서, 그것은 보인다 방법은 컨트롤러 클래스 dashboard입니다.

또한이 질문과 대답을 확인하십시오. routing controllers in sub folders - codeigniter 나는 시도하고있는 것을 보여주는 예제를 제공한다고 생각합니다.

+0

admin은 폴더이고 대시 보드는 contoller입니다. 대시 보드/추가/ – murtazamzk

+0

에 대해 404가 표시됩니다. 알지 못했습니다. 만약'dashboard'가 컨트롤러라면,'(: any)'가 그 컨트롤러에서 함수로 전달되고 있다고 생각합니다. 그래서 오류를 기반으로, 어떤 함수 이름이 건간에 컨트롤러에서 발견되지 않은 것처럼 보입니다. – dmullings

관련 문제