Yii urlManager规则上的可选参数
我使用了Yii urlManager规则上的可选参数,yii,parameters,yii-url-manager,Yii,Parameters,Yii Url Manager,我使用了Yii::app()->request->getParam(),这样我就可以有一个友好的url,比如/listings/professionals/1 我的控制器上有3个操作,它们获取参数$property\u id=Yii::app()->request->getParam('property\u id') 这两个动作便利设施和餐饮工作正常,但在最后一个动作照片中,var属性id得到了一个空值 我尝试删除照片规则中的第二个参数,一切正常。如何在不删除第二个参数的情况下解决此问题 以下是
Yii::app()->request->getParam()
,这样我就可以有一个友好的url,比如/listings/professionals/1
我的控制器上有3个操作,它们获取参数$property\u id=Yii::app()->request->getParam('property\u id')
这两个动作便利设施
和餐饮
工作正常,但在最后一个动作照片
中,var属性id
得到了一个空值
我尝试删除照片规则中的第二个参数,一切正常。如何在不删除第二个参数的情况下解决此问题
以下是urlmanager规则:
'urlManager'=>array(
'urlFormat'=>'path',
'showScriptName' => false,
'rules'=>array(
'listings/amenities/<property_id>'=>'listings/amenities',
'listings/meals/<property_id>'=>'listings/meals',
'listings/photos/<property_id>/<gallery_id>'=>'listings/photos',
),
),
你试过使用两条规则吗?首先放置较长的规则:
'listings/photos/<property_id:\d+>/<gallery_id:\d+>' => 'listings/photos',
'listings/photos/<property_id:\d+>' => 'listings/photos',
最后,只需将“列表/照片/”=>“列表/照片”和“列表/照片/”=>“列表/照片”分开放置即可
'listings/photos/<property_id:\d+>/<gallery_id:\d+>' => 'listings/photos',
'listings/photos/<property_id:\d+>' => 'listings/photos',
public function actionPhotos($propertyId, $galleryId = null) {