在我的应用程序中,我使用了带有actionUsers
的ApiController
,所以在YII中,路径变成了api/users
。现在,为了获取某些用户的信息,我使用以下路径api/users/id/10
,其中10是userID,路径的id
部分基本上是一个get参数(api/users?id=10
)。
有没有办法在不使用路径的id
部分的情况下做同样的事情,即我希望我的路径看起来像api/users/10
谢谢!
发布于 2010-05-07 14:48:43
您将需要在urlManager组件中加入规则模式:
Yii Framework Documentation: url
您的配置应如下所示:
array(
......
'components'=>array(
......
'urlManager'=>array(
'urlFormat'=>'path',
'rules'=>array(
'api/users/<id>'=>'api/users',
),
),
),
);
然后,您可以通过以下方式获取该值:
$id = Yii::app()->getRequest()->getQuery('id');
发布于 2013-12-20 16:15:51
试试这个......
$id = Yii::app()->request->getParam('id');
发布于 2015-09-16 16:06:58
除了@shiki的回答之外,你还可以这样做
array(
......
'components'=>array(
......
'urlManager'=>array(
'urlFormat'=>'path',
'rules'=>array(
'api/users/<id>'=>'api/users',
),
),
),
);
并付诸行动
public function actionUsers($id=null) // argument variable should same as in urlmanager
{
echo $id;
}
https://stackoverflow.com/questions/2760869
复制相似问题