我希望能够/
URL
为Yii2 Framework
分隔http://localhost/advanced/backend/web/controller/action/parameter1/parameter2
的操作参数,
例如:parameter(1,2,...)
此处id
不仅仅是integer
和'<controller:\w+>/<id:\d+>' => '<controller>/view',
'<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
'<controller:\w+>/<action:\w+>/*'=>'<controller>/<action>'
个数字
我在互联网上搜索了很多,但也没有找到有用的答案,但是hvave尝试了这个:
http://localhost/advanced/backend/web/controller/action/?parameterName=value
但它不起作用 我必须将参数作为get变量传递给工作
mysqldump
任何人都可以帮助我,对我来说是必要的。
答案 0 :(得分:0)
有2个参数(或任何已知的数字)你可以扩展这种模式:
'<controller:\w+>/<action:\w+>/<param1:\w+>/<param2:\w+>' => '<controller>/<action>',
无限数量的参数,我认为它不适用于UrlRule级。你需要编写自己的类并替换。不知道为什么你想拥有无限数量的参数。网址也不能无限长。
---编辑---
如果你想要4个参数,你可以在函数中使用默认值,而不是编写新的UrlRule类
public function actionMyController($param1=null, $param2=null, $param3=null, $param4=null)