2014-01-14 43 views
0

我已经控制器命名pagesController,我有内部命名actionSite 如何创建路由规则的pagesControllerActionSite有两个参数控制器动作,第一个是name_en,第二个是ID创建multible参数Yii的URL路径

我的路线应该是'/网页/网站/ os1w/10'

pages is controller 
site is action 
oslw is the value of name_en param 
id is the value of id param 

所以我得的参数值如下:

name_en = $_GET['name_en']; //it return oslw 
id  = $_GET['id']; // it return 10 

我的配置是这样的:

'rules'=>array(
    '<controller:\w+>/<id:\d+>'=>'<controller>/view', 
    '<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>', 
    '<controller:\w+>/<action:\w+>'=>'<controller>/<action>', 
), 

我试图

'/pages/site/<name_en:\w+><id:\w+>'=>'mysite/login', 

但它返回无法解决请求

感谢您的帮助

回答

0

你几乎正确的,但尝试这个

'/pages/site/<name_en:\w+>/<id:\d+>'=>'payfort/login', 

我刚才在加入了/<name_en:\w+>/<id:\d+>之间,而不是使用\w+<id:,你应该使用\d+

+0

由于它运作良好 –

+0

很高兴帮助:) –