老莫的笔记本  
  
查看: 1033|回复: 0

Laravel 路由 之 子域名、路由前缀和命名空间

[复制链接]

662

主题

878

帖子

5145

积分

超级版主

Rank: 8Rank: 8

积分
5145
发表于 2019-6-3 23:44:24 | 显示全部楼层 |阅读模式
  1. <?php

  2. /*
  3. |--------------------------------------------------------------------------
  4. | Web Routes
  5. |--------------------------------------------------------------------------
  6. |
  7. | Here is where you can register web routes for your application. These
  8. | routes are loaded by the RouteServiceProvider within a group which
  9. | contains the "web" middleware group. Now create something great!
  10. |
  11. */

  12. Route::get('/', function () {
  13.     return view('welcome');
  14. });


  15. // 路由分组测试 利用 Route::group
  16. // 该分组 无意义【又没共同项】
  17. Route::group([], function () {
  18.     Route::get('hello', function () { return 'Hello'; });
  19.     Route::get('world', function () { return 'World'; });
  20. });

  21. // 路由分组测试2 【利用middleware 定义路由分组的中间件】
  22. // 要给某个路由分组中定义的所有路由分配中间件,可以在定义分组之前使用 middleware 方法。中间件将会按照数组中定义的顺序依次执行
  23. Route::group(['middleware' =>  ['auth', 'another']], function () {
  24.     Route::get('dashboard', function () {
  25.         return view('dashboard');
  26.     });
  27.     Route::get('account', function () {
  28.         return view('account');
  29.     });
  30. });

  31. // 路由中间件
  32. // Route::group(['middleware'=>['lma']],function(){
  33. //     Route::get('am','AmConTroller@index');
  34. // });


  35. // 路由路径前缀 【其实就是同一个路由 简写而已 这边搞成了路由分组】  注:教程是坑人的 ,
  36. //  我个人怀疑这个 ->name 只是 路由重定向时的别名而已
  37. Route::prefix('am')->group(function () {
  38.     Route::get('/','AmConTroller@index', function () {
  39.         // 处理 /api 路由
  40.     })->name('am.index');
  41.     Route::get('create','AmConTroller@create', function () {
  42.         // 处理 /api/users 路由
  43.     })->name('am.create');
  44. });


  45. // 子域名路由 【就是不仅仅有一个域名,还有很多二级域名】
  46. //  写法和概念 和上面 路由路径前缀差不多, 不过有参数带入,和直接写死
  47. // 1.写死型
  48. // Route::domain('admin.blog.test')->group(function () {
  49. //     Route::get('/', function () {
  50. //         // 处理 http://admin.blog.test 路由
  51. //     });
  52. // });

  53. // 2.子域名参数带入型
  54. // Route::domain('{account}.blog.test')->group(function () {
  55. //     Route::get('/', function ($account) {
  56. //         //
  57. //     });
  58. //     Route::get('user/{id}', function ($account, $id) {
  59. //         //
  60. //     });
  61. // });




  62. // 子命名空间 【不知所谓,仿佛就是 在 控制器的同级 再建造一个 文件admin 然后下面的文件重新命名命名空间】
  63. // Route::get('/', 'Controller@index');
  64. // 默认的命名空间是 App\Http\Controllers(在 app/Providers/RouteServiceProvider.php 中设置)

  65. // Route::namespace('Admin')->group(function() {
  66. //      // App\Http\Controllers\Admin\AdminController
  67. //      Route::get('/admin', 'AdminController@index');
  68. // });


  69. // 路由命名前缀 【 路由命名+路径前缀 】,用处其实就是 路由前缀那个改版,把命名也提出出来
  70. // Route::name('user.')->prefix('user')->group(function () {
  71. //     Route::get('{id?}', function ($id = 1) {
  72. //         // 处理 /user/{id} 路由,路由命名为 user.show
  73. //         return route('user.show');
  74. //     })->name('show');
  75. //     Route::get('posts', function () {
  76. //         // 处理 /user/posts 路由,路由命名为 user.posts
  77. //     })->name('posts');
  78. // });

复制代码


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表