基本資料

Laravel 版本:5.8

本文是假設已經建立好 laravel 專案,可以看到以下畫面的狀態。

使用者登入的功能摘要

使用者登入至少要有以下的功能:

  1. 使用者註冊
  2. 登入
  3. 登出
  4. 密碼重設

實作步驟

一、建立 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

這樣就可以完成最基本的使用者登入功能。

Last modified: 2019-08-08

Author

Comments

Write a Reply or Comment

Your email address will not be published.