如何防止 HTMLHelper::link() 将关键字添加到 URL 路径? (CakePHP 2.5)
How do I prevent HTMLHelper::link() from adding keywords to the URL path? (CakePHP 2.5)
我有一个带有用于打开特定页面的按钮的通用布局:
<?php echo $this->Html->link('My cart', array('controller' => 'shop', 'action' => 'cart'), array('escape' => false)) ?>
此 link 将重定向到页面 /shop/cart
。但是,如果我在使用另一个控制器的页面中,我就会遇到问题。示例:我在一个依赖于 UsersController 的页面上,我的 URL 是:customer/
现在如果我点击 'My Cart' link,URL 是: customer/shop/cart
这是一个错误。
如何清除我的 URL?
谢谢。
您可能已将 customer 设置为 /Config/core 中的路由前缀。php:
Configure::write('Routing.prefixes', array('customer'));
并且您正在从以 customer_.
开头的操作中 linking 到 /shop/cart
这是默认行为。
要删除前缀,重写 link 如下:
<?php echo $this->Html->link('My cart', array('controller' => 'shop', 'action' => 'cart','customer'=>false), array('escape' => false)) ?>
更多关于 Prefix Routing。
我有一个带有用于打开特定页面的按钮的通用布局:
<?php echo $this->Html->link('My cart', array('controller' => 'shop', 'action' => 'cart'), array('escape' => false)) ?>
此 link 将重定向到页面 /shop/cart
。但是,如果我在使用另一个控制器的页面中,我就会遇到问题。示例:我在一个依赖于 UsersController 的页面上,我的 URL 是:customer/
现在如果我点击 'My Cart' link,URL 是: customer/shop/cart
这是一个错误。
如何清除我的 URL?
谢谢。
您可能已将 customer 设置为 /Config/core 中的路由前缀。php:
Configure::write('Routing.prefixes', array('customer'));
并且您正在从以 customer_.
开头的操作中 linking 到 /shop/cart这是默认行为。
要删除前缀,重写 link 如下:
<?php echo $this->Html->link('My cart', array('controller' => 'shop', 'action' => 'cart','customer'=>false), array('escape' => false)) ?>
更多关于 Prefix Routing。