Laravel 5.1 中路由绑定 Controller 包含子目录写法

小郁闷,刚开始使用这货就给我出了一个难题…( ˇˍˇ )

StackOverFlow【已答复】:How to put controller inside folder in laravel 5.1.3?

【可以使用命令在项目根目录一键创建 php artisan make:controller 目录名/控制器名 --plain (是小写 php,CSDN…我服)】
【执行后可以省去 1-5 步】

  1. 首先在 /app/Http/Controllers 下新建目录,如 User

  2. User 内新建 PHP 控制器文件,如 UserController.php

  3. 此时命名空间应当是这样的: namespace App\Http\Controllers\User;

  4. 【!重点!】 namespace必需含有:use App\Http\Controllers\Controller;

  5. 类名没有什么好说的,class UserController extends Controller

  6. 写一个方法到控制器内,如:public function papapa(){return 'papapa'}

  7. 回到 /app/Http/routes.php 文件,绑定控制器:Route::get ( '/user', 'User\UserController@papapa' ); 搞定。


  看了下 StackOverFlow,有一个说法是创建好目录,然后直接写不包含路径的路由,最后在项目目录执行 composer dump-autoload 即可。【测试无效
  对了,还可以用路由群组的形式绑定:

Route::group ( [
		'namespace' => 'User'
], function () {
	Route::get ( '/user/login', 'UserController@index' );
} );

你可能感兴趣的:(Web,php,laravel,控制器,路由)