cake :: scope和Router :: prefix之间的cakephp区别

时间:2015-08-19 13:55:47

标签: cakephp-3.0

我知道路由器的前缀方法为路由添加了一个前缀,但我仍然混淆了范围方法对routes的作用。它只是前缀的别名或有自己的用途。

Console.WriteLine(cell.Value2 != null ? cell.Value2.ToString() : "null!");

2 个答案:

答案 0 :(得分:1)

经过一些小型研究后,我发现前缀范围前缀根据定义只是作用域路由是一回事。 路由范围是一种构建路由的方法,以便在作用域路由之间共享公共路径段和参数,从而保持代码DRY

答案 1 :(得分:1)

两者都允许共享公共路径段。区别在于前缀将在子命名空间中查找控制器。

来自documentation

  

前缀映射到应用程序Controller中的子命名空间   namespace ...使用我们的用户示例,访问URL   /admin/users/edit/5会调用我们的edit()方法   src/Controller/Admin/UsersController.php传递5作为第一个   参数。使用的视图文件是   src/Template/Admin/Users/edit.ctp

在上述情况下,范围会在src/Controller/UsersController.php处寻找控制器。