添加插件后的cakepp路由问题


cakephp routing issue after adding a plugin

我在app/plugins中添加了CakeDC用户插件。

现在为http://example.com/,如果我点击home/index链接,它会错误地重定向到http://example.com/users/posts/index,但应该是http://example.com/posts/index。

为什么插件"用户"总是添加在相应的控制器之前?

如果我从应用程序/插件中删除CakeDC用户插件,并从bootstrap.php中删除CakePlugin::loadAll();行,那么我会得到正常的链接/路由

routes.php:

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

如何在CakeDC用户插件中解决该问题

这就是访问插件的方式。你可以通过这种方式定义你的自定义路线

Router::connect('/posts', array('controller' => 'posts', 'plugin' => 'users'));

这将在app/Config/routes.php 中完成

如果是链接问题,您必须明确指定

echo $this->Html->link('link', array(
                                 'controller' => '', 
                                 'action' => '', 
                                 'plugin' => false)
                      );

但我更喜欢自定义路由。

有关更多信息,您可以随时潜入CookBook