2011-10-18 5 views
0

私は管理用Zend PHPアプリケーションの開発を開始しましたが、後で同じアプリケーションがパブリックフェイシングインターフェースをサポートする必要があることがプロジェクトに通知されました。私は、現在のコントローラとビューを別のモジュールに移動し、このアプローチに最も適した方法が不明です。既存のZend Action Controllerをモジュールに移動

私は単純にzf createを使用してモジュールを生成し、すべての資産を新しいモジュールにコピーし、モジュール内のそれらのアクションのいずれかに移動しようとすると、Zendは次のエラーをスローするので、

Next exception 'Zend_Controller_Exception' with message 'Invalid controller specified (error)#0 /opt/zf/library/Zend/Controller/Front.php(954): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http)) 
#1 /opt/zf/library/Zend/Application/Bootstrap/Bootstrap.php(97): Zend_Controller_Front->dispatch() 
#2 /opt/z in /opt/zf/library/Zend/Controller/Plugin/Broker.php on line 336 

私の唯一の推測では、私はZendのは、ZFが作成したが、Zendのに非常に新しいですし、この上の任意の情報を見つけることができなかった使用して、新しいコントローラの設定デフォルトルートを壊すんだということです。

答えて

2

コントローラ名の前に、モジュール名:{ModuleName}_{ControllerName}Controller(デフォルトモジュールでない場合)を付ける必要があります。しかし、ファイル名は同じです。 .zfproject.xmlはアプリケーションに影響しません。このファイルには、zf-toolの情報だけが含まれています。

+0

実際には、スクリプトをコピーするのではなく、新しいコントローラを生成するためにzf-toolを使用した後でこれを実現しました。私は擬似ネームスペースのことを覚えておくためにそれを取ったのはかなり馬鹿だと感じています...そうでなければ、モジュールコントローラ間で名前の競合が起こる可能性があります。また、 '.zfproject.xml'はzf-toolだけのものだと感じましたが、確認のために感謝しています。 – tomswift

関連する問題