今週、Phalcon について調べ始めたところです。開発ツールを使用して複数モジュールのアプリケーションを作成しようとしています。
実行の結果、phalcon project <name> multiple
1 つのモジュール (「フロントエンド」) のみが作成され、正常に動作します。ただし、2 つ目のモジュールを追加すると (フロントエンドのモジュールをコピーして名前空間を \Backend に変更すると、Backend\IndexController クラスに到達できませんでした。
複数モジュール アプリケーションに関するドキュメント ページを読み、サンプル ( https://github.com/phalcon/mvc/tree/master/multipleおよびhttps://github.com/phalcon/mvc/tree/master/multiple -volt ) と Google グループの古い質問 (申し訳ありませんが、私は StackOverflow を初めて使用するため、2 つ以上のリンクを投稿できません)、services.php ファイルの次の行のコメントを終了しました。
$router->setDefaultNamespace("MyL\Frontend\Controllers"); //project name is MyL
そして、backend/Module.php ファイルの setServices に以下を追加します。
$di->set('dispatcher', function() {
$dispatcher = new Dispatcher();
$dispatcher->setDefaultNamespace("MyL\Backend\Controllers");
return $dispatcher;
});
そして、frontend/Module.php で似たようなもの
これらの変更で機能しますが、私の質問は次のとおりです。これが最善の方法ですか、それとももっと良い方法がありますか?
前もって感謝します!