Cakephp 3 Routing mit Sprachparameter

Ich versuche, cakephp 2.x nach 3.x zu konvertieren. Ich habe @ benutRouter::connect() Regeln, aber ich versuche, sie in die Scope-Version zu konvertieren.

Bezüglich der myold-Routing-Regel inconfig/routes.php Ich habe das hinzugefügt.

  Router::defaultRouteClass('Route');
  Router::scope('/', function ($routes) {

    $routes->connect('/:language/:controller/:action/*', ['language' => 'ar|de|en|fr']);
    $routes->connect('/:language/:controller', ['action' => 'index', 'language' => 'ar|de|en|fr']);
    $routes->connect('/:language', ['controller' => 'Mydefault', 'action' => 'index', 'language' => 'ar|de|en|fr']);

    $routes->redirect('/gohere/*', ['controller' => 'Mycontroller', 'action' => 'myaction'], ['persist' => array('username')]);

    $routes->connect('/', ['controller' => 'Mydefault', 'action' => 'index']);

    $routes->fallbacks('InflectedRoute');
});
Aber dies schlägt fehl inexample.com/en/works. Ich bekomme diesen Fehler:Error: worksController could not be found. Weil meine Controller-Datei @ iWorksController.php.

Hängt der Name des Controllers am Satz Casein Cakephp 3?http: //book.cakephp.org/3.0/de/intro/conventions.html#controller-convention

Ebenfallsexample.com/foo/bar gibt diesen Fehler aus:Error: barController could not be found.. Aberfoo ist Controller undbar ist Aktion.

Wie kann ich dieses Routing-Problem beheben?

Bearbeiten
ÄndernRoute::defaultRouteClass('Route') zuRoute::defaultRouteClass('InflectedRoute') gelöstes Problem 1. Aber Problem 2 existiert.

Antworten auf die Frage(6)

Ihre Antwort auf die Frage