问题概述: 我理解了'admin'=>true/false的用法,也理解了在我的情况下'user'=>true/false的用法,并且可以创建适合每种情况的链接,但是我想知道如何将其实现到路由文件中。 例如,在路由文件中已经有以下内容:
Router::connect('/pages/*', array('controller' => 'pages', 'action' => 'display'));
然而,我希望任何以前缀开头的链接都能进行相同的重定向,并删除前缀。 我尝试过:
Router::connect('*/pages/*', array('controller' => 'pages', 'action' => 'display', 'user'=>false));
Router::connect('/user/pages/*', array('controller' => 'pages', 'action' => 'display', 'user'=>false));
但这并不起作用。 需要帮忙吗? 谢谢。
----------(以下是原问题)--------
简单的一个问题.. 我不确定如何防止前缀, 例如,如果我在domain.com/admin/order或domain.com/user/order中,它们是orders控制器中的admin_和user_操作,并且导航菜单包含链接到页面显示(controller pages action display,**),当它们被点击时,它们会自动添加当前前缀。 如何在路由器文件中设置以重定向通配符前缀(即/pages/)?
编辑- 我的意思是我想重定向到没有前缀的URL....因为当用户处于前缀URL中并单击一个仅包含controller => action =>的链接时,它会自动将链接前缀化为当前前缀,无论是管理员还是用户,在这种情况下,我只需要一个没有前缀的链接。(即,我希望cake只在链接明确指定使用前缀时才使用前缀,而不是在每个简单的html helper控制器、action链接上继续使用它们。)
$html->link('users', array('prefix' => '','controller' => 'users','action' => 'index'))
来避免自动添加前缀吗? - RSK$html->link('users', array('controller'=>'users','action'=>'index','admin'=>false);
- David Yell