众所周知,在 Laravel 中执行
$ php artisan make:auth
$ php artisan migrate
命令之后,我们就拥有一个完整的登录、注册认证系统,这为开发带来很大的便利。
但 make:auth命令执行后都生成了哪些文件、做了哪些修改呢?
在此之前需要弄清楚的是,安装完一个项目后:
框架内部已存在认证所需的控制器。在 App\Http\Controllers\Auth 命名空间下,包括LoginController 、RegisterController、ForgotPasswordController 和 ResetPasswordController 四个控制器。
框架内已存在认证所需的迁移表文件。在 databases\migrations 文件夹下,包括 2014_10_12_000000_create_users_table.php 和 2014_10_12_100000_create_password_resets_table.php 两个。
当执行 php artisan make:auth 命令时,具体生成修改下面的文件:
视图
创建下面的6个 Blade 视图文件:
home.blade.php。
layouts\app.blade.php。
auth\login.blade.php。
auth\register.blade.php。
auth\password\email.blade.php。
auth\password\reset.blade.php。
控制器
创建了一个控制器:HomeController
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class HomeController extends Controller
{
/**
* Create a new controller instance.
*
* @return void
*/
public function _construct(){
$this->middleware('auth');
}
/**
* Show the application dashboard.
*
* @return \Illuminate\Http\Response
*/
public function home(){
return view('home');
}
}
路由
在 routes\web.php 中注册了认证系统中使用的路由:
Auth::routes();
Route::get('/home', 'HomeController@home')->name('home');