0

如何通过CroogoRouter::connectCakePHP 中的函数显示 URL?我传递了控制器的名称和操作我的路由文件,例如:

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

我被重定向到仪表板页面,但我看不到正确的 URL。我想要我的 URL localhost/abc/admin/dashboard,它只显示为localhost/abc

4

2 回答 2

2

由于您使用 webroot ( /) 作为路由别名,因此它不会显示该admin/dashboard位。如果你真的想要它(如果它只是为了花哨的显示目的,我会劝阻它),你应该创建一个简单的控制器动作来重定向。例如,如果您将路线更改为此:

CroogoRouter::connect('/', array('controller' => 'dashboard', 'action' => 'home'));

然后在DashboardsController创建这个动作:

public function home() {
    $this->autoRender = false; // We have no view, so don't render anything
    $this->redirect(array('admin' => true, 'controller' => 'dashboard', 'action' => 'index'));
}

它应该根据需要显示 URL。同样,如果它仅用于显示目的(使其看起来“漂亮”)而不是出于任何 SEO 目的,我不鼓励使用这种丑陋的解决方法。但无论哪种方式,它都应该可以解决问题。

于 2012-12-26T09:50:15.797 回答
0

你能检查控制器名称吗?我认为控制器名称应该是仪表板或其他东西。

检查此链接可能会有所帮助http://bakery.cakephp.org/articles/Frank/2009/11/02/cakephp-s-routing-explained

于 2012-12-26T09:30:49.577 回答