管理员索引路由被忽略w / CakePHP 2.1

时间:2017-09-08 14:32:56

标签: cakephp routes cakephp-2.1

我正在开发一个CakePHP 2.1项目,我对管理面板的“主页”有一个问题。

当我输入:mysite.com/admin 我有一条消息告诉我“无法找到AdminController”。

我在config / routes.php中宣布了这条路线:

Router::connect('/admin', array('controller' => 'mycontroller', 'action' => 'index', 'admin' => true));

当我输入mysite.com/admin/mycontroller作为URI时,它可以工作。 你有什么想法吗?

提前谢谢。

编辑|我的routes.php文件:`

/**
 * Here, we are connecting '/' (base path) to controller called 'Pages',
 * its action called 'display', and we pass a param to select the view file
 * to use (in this case, /app/View/Pages/home.ctp)...
 */
    Router::connect('/', array('controller' => 'pages', 'action' => 'display', 'home'));
/**
 * ...and connect the rest of 'Pages' controller's URLs.
 */
    Router::connect('/pages/*', array('controller' => 'pages', 'action' => 'display'));

/**
 * Load all plugin routes. See the CakePlugin documentation on
 * how to customize the loading of plugin routes.
 */
    CakePlugin::routes();

/**
 * Load the CakePHP default routes. Only remove this if you do not want to use
 * the built-in default routes.
 */
    require CAKE . 'Config' . DS . 'routes.php';


// Custom routes
Router::connect('/admin', array('controller' => 'jobapplications', 'action' => 'index', 'admin' => true));

1 个答案:

答案 0 :(得分:1)

如所怀疑的那样,存在冲突的路线,即核心提供的the default routes,您通过

包括
require CAKE . 'Config' . DS . 'routes.php';

在定义/admin路线之前。

默认设置可以连接各种可以隐藏你的路线,例如:

Router::connect("/{$prefix}/:controller", $indexParams);

Router::connect('/:controller', array('action' => 'index'));

长话短说,订单很重要,将您的路线定义移到包含默认路线之上。