Table of Contents
基本資料
Laravel 版本:5.8
本文是假設已經建立好 laravel 專案,可以看到以下畫面的狀態。
使用者登入的功能摘要
使用者登入至少要有以下的功能:
- 使用者註冊
- 登入
- 登出
- 密碼重設
實作步驟
一、建立 Authentication Scaffolding
Laravel 提供了一個非常快速的 artisan 指令,讓我們建立相關的檔案及設定。
php artisan make:auth
這個指令會修改 routes/web.php,新增使用者登入相關的路徑
Auth::routes();
上面的這行程式碼,其實代表以下程式碼,兩種方式擇一使用即可。
// 登入、登出
Route::get('login', 'Auth\LoginController@showLoginForm')
->name('login');
Route::post('login', 'Auth\LoginController@login');
Route::post('logout', 'Auth\LoginController@logout')
->name('logout');
// 註冊
Route::get('register',
'Auth\RegisterController@showRegistrationForm')
->name('register');
Route::post('register',
'Auth\RegisterController@register');
// 重設密碼
Route::get('password/reset',
'Auth\ForgotPasswordController@showLinkRequestForm')
->name('password.request');
Route::post('password/email',
'Auth\ForgotPasswordController@sendResetLinkEmail')
->name('password.email');
Route::get('password/reset/{token}',
'Auth\ResetPasswordController@showResetForm')
->name('password.reset');
Route::post('password/reset',
'Auth\ResetPasswordController@reset')
->name('password.reset.update');
還會新增以下檔案
app/Http/Controllers/HomeController.php
resources/views/auth/
resources/views/home.blade.php
resources/views/layouts/
二、資料庫相關作業
如果還沒有建立資料庫,請記得先建立資料庫
create database larauser;
修改 .env 中的 database 為 larauser,並設定相對應的資料庫帳號密碼
DB_DATABASE=larauser
DB_USERNAME=homestead
DB_PASSWORD=secret
php artisan migrate
這樣就可以完成最基本的使用者登入功能。
Comments