访问CakePHP 3路由器前缀

时间:2015-05-31 15:30:14

标签: php cakephp routing cakephp-3.0 ubuntu-15.04

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

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

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

SRC /控制器/管理/ 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 /控制器/管理/ 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)。

我将非常感谢您的回答。谢谢!

1 个答案:

答案 0 :(得分:2)

您没有完全按照Cookbook中描述的步骤操作,子名称空间以大写字母开头,确切地说,它将使用前缀名称的CamelCapsed版本,因此在您的情况下,&#39; s Admin,就像示例中一样。

如果你仔细观察,那也是错误信息告诉你的内容

  

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

它适用于Windows,因为默认情况下其文件系统为case-insensitive