网址管理器规则阻止进入模块

时间:2014-05-31 07:23:30

标签: php yii yii-url-manager

我正在使用Yii 1.1.14,由于URL管理器

,我遇到了问题

在url管理器中(在main.php中)我创建了这个规则

'<controller:\w+>/<action:\w+>/<bookingId:\w+>'=>'<controller>/<action>',

此规则阻止我进入管理模块。每当我尝试进入管理模块时,它会显示页面重定向问题,这可能是因为soome重定向循环。

但每当我做以下事情时,我都可以成功进入管理模块: -

  1. 如果我将<bookingId:\w+>更改为<bookingId:\d+>。将 w 更改为 d
  2. 如果我将'<controller:\w+>/<action:\w+>/<bookingId:\w+>'更改为'<controller:\w+>/<action:\w+>/<abc:\w+>/<bookingId:\w+>'。添加一个参数
  3. 但是他们都改变了我的网址

    controller/action?bookingId=adasasd
    

    所以我想问为什么这个规则会影响管理模块。它有什么问题吗?

1 个答案:

答案 0 :(得分:0)

您应该为模块指定第二条规则:

'<module:(yourModuleName)>/<controller:\w+>/<action:\w+>/<bookingId:\w+>'=>'<module>/<controller>/<action>'

在此规则中,如果变量只能采用整数值,则可以通过指定bookingId规则(\d+)来限制<bookingId:\d+>仅参数的整数值。