我使用Cakephp 2.0并且我有一个控制器设置来接受动态网址以呈现相同的视图:
http://domain/some-text-sid-2
http://domain/some-text-sid-3
.
.
.
页面的所有内容都由ajax相应更改。但是,当我访问此页面或从其他页面重定向到此页面时,我想显示在下面提到的链接中呈现的视图
http://domain/some-text
但网址应保持不变。例如,如果我访问页面:
http://domain/some-text-sid-2
那么视图应该是
http://domain/some-text
但网址不应更改。请提前帮助和谢谢。
答案 0 :(得分:0)
可能的解决方案是将以下路线添加到/Config/routes.php
:
//Matches anything except URLs that include 'my_controller' to prevent looping
Router::redirect('/:text', array('controller' => 'my_controller', 'action' => 'my_action'), array('persist' => ['text'],'text'=>'(?!my_controller)(.*)'));
然后,您在重定向后的操作中提取text
:
class MyController extends AppController
{
public function my_action() {
$text = $this->params->named['text'];
//[...] process action
}
}