0

我有个问题。我已经使用 Ubuntu 安装了 CakePHP 3,我想测试路由器前缀

Router::prefix('admin', function($routes) {
  $routes->connect('/:controller/:action/*', [], ['routeClass' => 'Cake\Routing\Route\InflectedRoute']);
});

我已经按照说明书中的步骤进行操作,在/src/Controller/admin中有这个 AppController 和 UsersController

src/Controller/admin/AppController.php

<?php
namespace App\Controller\Admin;

use Cake\Controller\Controller;


class AppController extends Controller{

public function initialize()
{
    parent::initialize();
    $this->loadComponent('Flash');
}


}// end class

?>

src/Controller/admin/UsersController.php

<?php
namespace App\Controller\Admin;

use Cake\Controller\Controller;


class AppController extends Controller{

public function initialize()
{
    parent::initialize();
    $this->loadComponent('Flash');
}


}// end class

?>

http://i.stack.imgur.com/7rjkv.png

我已经在 Windows 8 中使用 XAMPP 尝试过这种情况,我没有问题。我真的想知道我是否错过了配置中的某些内容?

顺便说一句,我遵循了如何在 ubuntu 中使用 cakephp 3 的步骤(从正确安装 LAMP、mbstring、intl、composer)。

我会很感激你的回答。谢谢!

4

1 回答 1

1

您没有完全遵循 Cookbook 中描述的步骤,子命名空间以大写字母开头,确切地说,它将使用前缀名称的 CamelCapsed 版本,所以在您的情况下,Admin就像示例中一样。

如果您仔细观察,这也是错误消息告诉您的内容

错误:在以下文件中创建类 UsersController:src/Controller/ Admin /UsersController.php

它适用于 Windows,因为默认情况下它的文件系统是不区分大小写的

于 2015-05-31T16:05:41.817 回答