私はマルチモジュールPhalconアプリケーションでいくつかの助けが必要です。私はhttps://github.com/phalcon/mvc/tree/master/multipleの指示に従いましたが、デフォルト以外のモジュールで変数ルーティングが動作しなくなりました。私はマルチモジュールのルーティングのいくつかの理解が必要ですPhalconアプリケーション
$router = new Router();
$router->setDefaultModule("admin");
$router->setDefaultAction('index');
これはadmin
モジュールのために働く:
$router->add("/:controller/:action/:params", array(
'module' => 'admin',
'controller' => 1,
'action' => 2,
'params' => 3
));
これはapi
モジュールのために働くだけで動作します(モジュールをデフォルトではない)を手動設定:
$router->add("/api", array(
'module' => 'api',
'controller' => 'index'
));
$router->add("/api/user", array(
'module' => 'api',
'controller' => 'user',
'action' => 'index'
));
しかし、このウォン」 api
モジュールの場合:
$router->add("/api/:controller/:action/:params", array(
'module' => 'api',
'controller' => 1,
'action' => 2,
'params' => 3
));
私は/ APIまたは/ API /ユーザーを使用したときに、私はその後、以下のようなエラーが表示されます。
\www\site\public\index.php:104:string 'admin\controllers\ApiController handler class cannot be loaded'
をしかし、私は/インデックス/ API /ユーザーにアクセスするときにそれが動作します。
$router->add("/api/:controller", array(
'module' => 'api',
'controller' => 1,
'action' => 'index',
));
$router->add("/api", array(
'module' => 'api',
'controller' => 'index',
'action' => 'index',
));
Phalconは厳密にそれ以外の場合は、それらを解決するつもりはない、指定するルートを必要とする:それはあなたがデフォルトのコントローラ、アクションとルートを逃しているsetDefaultAction
OK、クリア:
代わりに、モジュールが含まれたパターンを使用することができます。しかし、上記のようなデフォルトのモジュールではなぜうまくいくのでしょうか? –
私はそれがバグかもしれないと思う。 phalconのgithubに関する問題として報告してください – Luke