SocialEngineパッケージのモジュールを開発していますが、複数のカスタムルートを指定できるようにしたいと思います。
現在、モジュールのディレクトリにあるBootstrap.phpファイルを次のように編集しています。
class Courses_Bootstrap extends Engine_Application_Bootstrap_Abstract
{
protected function _initRouter(){
$fc = Zend_Controller_Front::getInstance();
$router = $fc->getRouter();
$router->addRoute('courses', new Zend_Controller_Router_Route('courses/activity/:activity_id', array('module' => 'courses', 'controller' => 'index','action' => 'activity')));
$router->addRoute('courses', new Zend_Controller_Router_Route('courses/course/edit/:course_id', array('module' => 'courses', 'controller' => 'course','action' => 'edit')));
$router->addRoute('courses', new Zend_Controller_Router_Route('courses/course/create/:course_id', array('module' => 'courses', 'controller' => 'course','action' => 'create')));
return $router;
}
}
ただし、1つ以上のルートを指定すると、すべてのルートがカスタム変数(course_idまたはactivity_id)の通過を停止するように見えます。
次のように変数を取得しています。
$course_id = $this->getRequest()->getParam("course_id");
私はここからアプローチを取りました。 http://tjgamble.com/2011/04/adding-custom-routes-to-your-socialengine-4-modules/
どうもありがとう、
アンディ