Input 规则顺序

Input 规则顺序,input,yii,controller,yii-validation,Input,Yii,Controller,Yii Validation,我的应用程序无法使用输入参数正常工作 我在配置urlManager中有两条规则: '<controller:\w+>/<action:\w+>/<factor:\w+>/<id:\d+>'=>'<controller>/<action>', '<controller:\w+>/<action:\w+>/<factor:\w+>/<ids:((id\d+)|\d)+>'=

我的应用程序无法使用输入参数正常工作

我在配置urlManager中有两条规则:

'<controller:\w+>/<action:\w+>/<factor:\w+>/<id:\d+>'=>'<controller>/<action>',

'<controller:\w+>/<action:\w+>/<factor:\w+>/<ids:((id\d+)|\d)+>'=>'<controller>/<action>'
'//'=>'/',
'///'=>'/'
在我的操作中,我尝试了两个输入:
id12id78
87
(任意数字)

对于第一个输入,操作将获得
id12id78
,但如果尝试第二个输入,则我的
$ids
参数为空


如何修复该错误?

嗯,没什么奇怪的:

  • id12id78
    :将应用第二条规则:
    $ids=>id12id78
  • 87
    :将应用第一条规则:
    $id=>87
我认为您不需要在这里输入不同的参数,您应该只使用
id
,例如:

'<controller:\w+>/<action:\w+>/<factor:\w+>/id<id:\d+>'=>'<controller>/<action>',   
'<controller:\w+>/<action:\w+>/<factor:\w+>/<id:\d+>'=>'<controller>/<action>',
'///id'=>'/',
'///'=>'/',