Sunday, 15 May 2011

php - Yii urlManager unlimited parameters -



php - Yii urlManager unlimited parameters -

is there way in yii create parameters unlimited

for example, have module /admin/

'urlmanager'=>array( 'urlformat'=>'path', 'showscriptname'=>false, 'casesensitive'=>false, 'rules'=>array( '<controller:\w+>/<id:\d+>'=>'<controller>/view', '<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>', '<controller:\w+>/<action:\w+>'=>'<controller>/<action>', 'admin/<controller:\w+>/<action:\w+>/<id:\d+>' => 'admin/<controller>/<action>', 'admin/<controller:\w+>/<action:\w+>'=>'admin/<controller>/<action>', ), ),

and within admin module need every action have unlimited parameters, example:

/admin/anycontroller/anyaction/anything /admin/anycontroller/anyaction/anything/anything2 /admin/anycontroller/anyaction/anything/anything2/anything3 /admin/anycontroller/anyaction/anything/anything2/anything3/anything4 ... , on

should define 1 1 on rules? or there shortcut this?

and how grab on controller action?

there shortcut:

'admin/<controller:\w+>/<action:\w+>/*'=>'admin/<controller>/<action>'

i.e append rule /*

since more general rule, can grab lot of urls, improve have @ bottom, or atleast after specific rules, i.e:

// ... other specific rules ... '<controller:\w+>/<action:\w+>/<id:\w+>'=>'<controller>/<action>', // id // ... other specific rules ... 'admin/<controller:\w+>/<action:\w+>/*'=>'admin/<controller>/<action>'

for case:

'<controller:\w+>/<id:\d+>'=>'<controller>/view', '<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>', '<controller:\w+>/<action:\w+>'=>'<controller>/<action>', 'admin/<controller:\w+>/<action:\w+>/<id:\d+>' => 'admin/<controller>/<action>', 'admin/<controller:\w+>/<action:\w+>'=>'admin/<controller>/<action>', 'admin/<controller:\w+>/<action:\w+>/*'=>'admin/<controller>/<action>'

to grab in action, don't specify parameters action, so:

public function actionsomething() { // instead utilize $_get $params=$_get; }

but should work definition have: public function actionanyaction($id=0,$type='',$type2='')

php yii

No comments:

Post a Comment