如何在Yii 2模块的路由中指定新的子目录?
我正在使用yii2并在一个名为如何在Yii 2模块的路由中指定新的子目录?,yii,module,routing,yii2,Yii,Module,Routing,Yii2,我正在使用yii2并在一个名为apiv1的yii2模块中构建一个RESTful API 模块apiv1的文件config.php如下所示: // ... urlManager' => [ // ... 'rules' => [ [ 'class' => 'yii\rest\UrlRule', 'controller' => [
apiv1
的yii2模块中构建一个RESTful API
模块apiv1的文件config.php
如下所示:
// ...
urlManager' => [
// ...
'rules' => [
[
'class' => 'yii\rest\UrlRule',
'controller' => [
'likes',
],
],
],
];
例如,
GET/apiv1/likes
可以工作,但我想设置一个路由来处理GET/api/v1/likes
。如何单独或作为从api/v1
到apiv1
的一般路线对整个模块执行此操作 您可以使用prefix
属性自定义rest/UrlRule路由
例如,对于您的情况,您应该能够:
[
'class' => 'yii\rest\UrlRule',
'controller' => 'likes',
'prefix' => 'api/v1',
]
有关更多信息,您可以查看和-尤其是查看
$patterns
和$extraPatterns
属性以了解其他配置选项。您是否试图将到达/apivi/likes/
的请求重定向到/api/v1/likes
?不是重定向只是重新路由,而是重定向。模块名为apiv1。对GET/api/v1/likes
的请求工作正常,但我希望将对GET/api/v1/likes
的请求路由到相同的控制器/操作。我确实尝试添加键/值对'prefix'=>'api/v1'
,但没有成功。更多信息:模块名为apiv1
,因此请求GET/api/v1/likes
可以正常工作。只需查找对GET/api/v1/likes
的请求,以同时路由到此端点。Paul,我也遇到了同样的问题,设置'pluralize'=>false使'prefix'生效。