を働いていない私は私のroutes.php
ファイルにこのコードを持っている:ルーティングと管理スコープはよく
Router::scope('/admin', function (RouteBuilder $routes) {
$routes->connect('/', ['controller' => 'Users', 'action' => 'dashboard']);
$routes->connect('/login', ['controller' => 'Users', 'action' => 'login']);
$routes->connect('/logout', ['controller' => 'Users', 'action' => 'logout']);
});
Router::scope('/', function (RouteBuilder $routes) {
$routes->connect('/', ['controller' => 'Pages', 'action' => 'display', 'home']);
$routes->connect('/pages/*', ['controller' => 'Pages', 'action' => 'display']);
$routes->fallbacks(DashedRoute::class);
});
私が認証されていないユーザーでhttp://localhost/admin
を訪れたとき、私はhttp://localhost/admin/login
にリダイレクトされるようにしたいです。この時点で私はhttp://localhost/login
にリダイレクトされてる私は管理者のスコープでライン$routes->fallbacks(DashedRoute::class);
を追加し、コードを変更した場合、ログインのリダイレクトはうまく動作しますが、すべての私のリンクは次のようにadmin
接頭辞で生成されます。
<?= $this->Html->link($category->name, ['controller' => 'categories', 'action' => 'view', $category->id]) ?>
が生成されます:
の代わり:
どのように私はこの問題を解決することができますか?
@SamHecquet私が外に置くと、$ routes変数(オブジェクト) – Vinicius