我遇到一个问题,在提交表单时,似乎忽略了我的路由并将我重定向到了Home。
在我的main.php路由中:
'<language\w+>/profile/<slug:[\w\-]+>' => 'profile/index',
'<language\w+>/<action:\w+>' => 'site/index',
我的表格:
<form action="<?php echo Yii::app()->getBaseUrl()."/".Yii::app()->language;?>
/profile/calendar" method="post">
哪些输出到
<form action="/domainname/nl/profile/calendar" method="post">
注意:域名是因为我在localhost上测试它。
然而,当按下提交按钮时,它会将我转发到主页而不是正确的页面。只需访问浏览器中的/domainname/nl/profile/calendar
即可,并为我提供正确的控制器。我不知道它为什么不在表格中工作。
在同一网站上的其他表单中,我有以下内容, 再次适用于路由:
<form action="/domainname/nl/profile/info" method="post">
这两种形式之间的区别在于最后一种形式是通过CActiveForm小部件创建的,而第一种形式则不是。
答案 0 :(得分:0)
向“/ domain name / nl / profile / info”发送简单的帖子请求并观察响应标头。或者您可以使用tcpdump或类似的东西分析现有请求
答案 1 :(得分:0)
我设法通过切换我的手动表单来解决这个问题,毕竟使用CActiveForm
小部件。我似乎需要yii_cs_csrf_token
自动生成的CActiveForm
。