Kohana에서는 디렉토리를 사용할 수 있습니다. 컨트롤러가 이렇게 배치됩니다.
application/classes/Controllers/V2_2013_02_13/Enpoint1Controller
당신이 당신의 다른 버전에 대한 경로를 설정할 수 있습니다보다.
Route::set('v2', 'v2/<controller>(/<action>)')
->defaults(array(
'directory' => 'V2_2013_02_13',
'controller' => 'welcome',
'action' => 'index',
));
이
당신이 정말로 내가 Kohana의 HMVC 보는 것보다 당신의 컨트롤러의 특정 버전을 호출 할 몇 가지 동적 인 방법을 갖고 싶어하지만 경우, 가장 쉬운 방법이 될 것입니다.
내 생각에, 각 버전에 대한 엔트리 컨트롤러가 필요하며 올바른 컨트롤러에 대한 내부 요청을 수행해야합니다.
아마도 이와 같은 것일 수 있습니다.
경로 :
Route::set('versioned', '<version>/<someAction>')
->defaults(array(
'version' => 'v2',
'someAction' => 'user'
'controller' => 'welcome',
'action' => 'index',
));
컨트롤러 :
class Controller_Welcome extends Controller {
public function action_index()
{
// Your Version and the action
$this->request->param('version');
$this->request->param('someAction');
// Do an internal request to the right controller (the v2/user is an example)
$internalRequest = Request::factory('v2/user');
}
}
나는이 도움이되기를 바랍니다.
안녕하세요, 어떻게 구현 했습니까? Symfony2를 사용하고 있으며 해결책을 찾고 있습니다. –