CakePHP3中的嵌套REST路由和子名称空间
在CakePHP3中,rest路由不调用子名称空间中的类。例如,路由“posts/2/comments/10”调用App\Controller\CommentsController。我想让它调用App\Controller\Posts\commentscocontroller,因为评论并不总是针对帖子 以下是我的解决方案:CakePHP3中的嵌套REST路由和子名称空间,rest,cakephp-3.0,Rest,Cakephp 3.0,在CakePHP3中,rest路由不调用子名称空间中的类。例如,路由“posts/2/comments/10”调用App\Controller\CommentsController。我想让它调用App\Controller\Posts\commentscocontroller,因为评论并不总是针对帖子 以下是我的解决方案: $routes->resources('Posts'); Router::scope('/posts/:post_id/',['post_id'=>'
$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()