如何防止HTMLHelper :: link()向URL路径添加关键字? (CakePHP 2.5)

时间:2015-11-30 13:31:36

标签: cakephp cakephp-2.5 cakephp-2.x

我有一个共同的布局,其中包含一个用于打开特定页面的按钮:

<?php echo $this->Html->link('My cart', array('controller' => 'shop', 'action' => 'cart'), array('escape' => false)) ?>

此链接将重定向到页面/shop/cart。但如果我在使用另一个控制器的页面中,我有一个问题。示例:我在一个页面上取决于UsersController,我的URL是:customer/现在,如果我点击“我的购物车”链接,则URL为:customer/shop/cart这是一个错误。

如何清除我的网址?

感谢。

1 个答案:

答案 0 :(得分:2)

您可能已将 customer 设置为/Config/core.php中的路由前缀:

Configure::write('Routing.prefixes', array('customer'));

并且您从以 customer _ 开头的操作中链接到/ shop / cart。

这是默认行为。

要删除前缀,请按如下所示重写链接:

<?php echo $this->Html->link('My cart', array('controller' => 'shop', 'action' => 'cart','customer'=>false), array('escape' => false)) ?>

更多关于Prefix Routing