0

このような Cakephp のマスター ルーティングを定義したいと思います。

Router::connect('/:lang/:plugins/:controller/:action/*', array('lang' => 'eng', 'controller' => 'index', 'action' => 'index', 'plugin' => null), array('lang' => '[a-z]{3}'));

しかし、デフォルトでは機能しません。これらのエラーを入力すると消えます:

/           Error: Controller could not be found.
/eng        Error: EngController could not be found.
/eng/pages  Error: EngController could not be found.
4

1 に答える 1

0

ルート エラーが言っているのは、使用するように要求しているコントローラーが存在しないということです。CakePHP 2 を使用していると仮定しているので、コントローラーのファイル名が次のようになっていることを確認してください。

EngController.php

そして、そのコントローラ ファイル内では、次のようになります。

<?php
App::uses('AppController', 'Controller');
/**
 * Eng Controller
 *
 */
class EngController extends AppController {

/**
 * Scaffold
 *
 * @var mixed
 */
    public $scaffold;

}

編集:
ルートをもう一度見てみましたが、ルート'lang' => 'eng'の開始点にあります。あなたが得ているエラーengは、コントローラーであると考えているルートからのものです。このセクションを完全に削除すると、修正されるはずです。

于 2012-05-08T08:18:40.530 に答える