CakePHP3 中的嵌套 REST 路由和子命名空间
Nested REST routes and subnamespaces in CakePHP3
在 CakePHP 3 中,其余路由不会在子命名空间中调用 类。例如路线 "posts/2/comments/10" 呼叫 App\Controller\CommentsController。我希望它调用 App\Controller\Posts\CommentsController 因为评论并不总是针对帖子...
这是我的解决方案:
$routes->resources('Posts');
Router::scope('/posts/:post_id/',['post_id'=>'[0-9]+','prefix'=>'posts'], function($routes){
$routes->resources('Comments');
});
它工作正常,但我不知道这是否是一个好的做法。
谢谢
如果您想按命名空间对控制器进行分组,请使用 Router::prefix()
或 $routes->prefix()
而不是 $routes->scope()
在 CakePHP 3 中,其余路由不会在子命名空间中调用 类。例如路线 "posts/2/comments/10" 呼叫 App\Controller\CommentsController。我希望它调用 App\Controller\Posts\CommentsController 因为评论并不总是针对帖子...
这是我的解决方案:
$routes->resources('Posts');
Router::scope('/posts/:post_id/',['post_id'=>'[0-9]+','prefix'=>'posts'], function($routes){
$routes->resources('Comments');
});
它工作正常,但我不知道这是否是一个好的做法。
谢谢
如果您想按命名空间对控制器进行分组,请使用 Router::prefix()
或 $routes->prefix()
而不是 $routes->scope()