2014-08-27 133 views
0

我有模塊admin。通常在ZF的名字下爲這個模塊創建路由,但我不想要這種行爲。在Zend Framework中更改模塊路由

我想訪問在另一個途徑admin模塊,例如totallyNotAdminPanel,我希望它是訪問此模塊的唯一可能的途徑,但我想查看網址助手時,我會指向這個模塊調用$this->url(['module'=>'admin']);


結論:

  • admin模塊必須通過totallyNotAdminPanel路線
  • 只訪問URL視圖助手必須指向totallyNotAdminPanel路由,儘管['module' => 'admin']參數已通過。

有什麼辦法可以在ZF1中實現它?

回答

2

我認爲你可以使用自定義路由。

我會做這樣的:

  1. 創建自定義路由和自舉類初始化。例如

    public function _initRoutes() { 
        $router = $this->_front->getRouter(); 
        $router->addRoute(
         'admin-panel', 
         new Zend_Controller_Router_Route(
          'totallyNotAdminPanel/:controller/:action/*', 
          ['module' => 'admin'] 
         ) 
        ); 
    } 
    
  2. 在視圖中使用自定義URL創建鏈接例如

    $this->url(['module'=>'admin', 'controller'=>'users', 'action'=>'list'], 'admin-panel'); 
    

哪位能給你這樣的輸出:/ totallyNotAdminPanel /用戶/列表

祝你好運:)

+0

謝謝您的回答!不幸的是,這不能正常工作。當我通過更改路由鏈接到admin模塊的默認模塊時,我得到了如下的url:'/ notAdminPanel/home/index/module/default' – Skysplit 2014-08-28 07:19:17

+0

我通過在控制器中添加'default'路徑繞過了這個問題。 謝謝你的幫助! :) – Skysplit 2014-09-02 08:45:54