Tutorial Laravel Fortify #3 : Installasi dan Konfigurasi Laravel Fortify


Fika Ridaul Maulayya
I'm a Full-Stack Web Developer, Content Creator and CO-Founder Santri Koding. I share everything i know with Articles, Screencasts and E-Books at SantriKoding.com

Halo teman-teman semuanya, diartikel sebelumnya kita semua seudah belajar bersama-sama bagaimana cara installasi dan konfigurasi project baru dengan Laravel. Dan pada kesempatan kali ini kita semua akan belajar bagaimana cara installasi dan konfigurasi Laravel Fortify di dalam project Laravel kita.

Laravel Fortify merupakan backend uathentication yang digunakan oleh Laravel Jetsream. Ya benar, bahwa Laravel Jetstream untuk proses authentication dia menggunakan service yang dimiliki oleh Laravel Fortify. Seperti, register, login, forgot password, reset password, sampai two-factor authentication. Langsung saja kita mulai.

Langkah 1 - Installasi Laravel Fortify

Silahkan masuk di dalam project Laravel yang sebelumnya kita sudah buat, kemudian jalankan perintah di bawah ini untuk melakukan installasi Laravel Fortify :

composer require laravel/fortify

Silahkan tunggu proses installasi sampai selesai, dan pastikan teman-teman harus terhubung dengan interrnet, karena package ini akan diunduh secara online.

Langkah 2 - Konfigurasi Laravel Fortify

Setelah proses installasi Laravel Fortify menggunakan Composer selesai, sekarang kita lanjutkan untuk melakukan publish file-file konfigurasi dari Laravel Fortify. Silahkan jalankan perintah di bawah ini :

php artisan vendor:publish --provider="Laravel\Fortify\FortifyServiceProvider"

Jika berhasil, kita akan mendapatkan banyak sekali file-file untuk kebutuhan Authenticarion di dalam project Laravel kita, diantaranya adalah :

  • app/Actions/Fortify/
  • app/config/fortify.php
  • app/Providers/FortifyServiceProvider.php

Di dalam folder app/Actions/Fortify/ ada beberapa file, dimana file-file inilah yang akan digunakan untuk melakukan beberapa action, seperti Create User, Password Validation, Reset Password, Update Password dan Update Profile. Dimana disini kita juga bisa melakukan kustomisasi sesuai dengan kebutuhan kita.

Untuk file app/config/fortify.php berisi bebepa konfigurasi yang ada di dalam Laravel Fortify, seperti default Guard, Middleware, sampai fitur-fitur yang ada di dalam Laravel Fortify.

Langkah 3 - Mengaktifkan Fitur Authentication

Sekarang kita akan mengaktifkan view untuk Authentication di Laravel Fortify. Silahakn buka file app/Providers/FortifyServiceProvider.php pada function boot silahkan tambahkan kode berikut ini :

//register
Fortify::registerView(function () {
 	return view('auth.register');
});

//login
Fortify::loginView(function () {
  	return view('auth.login');
});

//forgot
Fortify::requestPasswordResetLinkView(function () {
  	return view('auth.forgot-password');
});

//reset
Fortify::resetPasswordView(function ($request) {
   	return view('auth.reset-password', ['request' => $request]);
});

Di atas untuk register kita akan menggunakan view dengan nama register.blade.php yang berada di dalam folder auth. Kurang lebih seperti berikut ini :

//register
Fortify::registerView(function () {
 	return view('auth.register');
});

Dan untuk proses login, kita menggunakan nama file login.blade.php di dalam folder auth. Kurang lebih seperti ini :

//login
Fortify::loginView(function () {
  	return view('auth.login');
});

Kemudian untuk view yang akan kita gunakan untuk mengirim link reset password yaitu forgot-password.blade.php yang berada di dalam folder auth. Kurang lebih seperti berikut ini :

//forgot
Fortify::requestPasswordResetLinkView(function () {
  	return view('auth.forgot-password');
});

Setelah link berhasil dikirim melalui email, maka kita akan melakukan update password. Dan untuk view yang akan kita gunakan yaitu reset-password.blade.php yang nanti akan dibuat di dalam folder auth. Kurang lebih seperti ini :

//reset
Fortify::resetPasswordView(function ($request) {
   	return view('auth.reset-password', ['request' => $request]);
});

Jika file app/Providers/FortifyServiceProvider.php di tulis dengan lengkap, kurang lebih seperti berikut ini :

<?php

namespace App\Providers;

use App\Actions\Fortify\CreateNewUser;
use App\Actions\Fortify\ResetUserPassword;
use App\Actions\Fortify\UpdateUserPassword;
use App\Actions\Fortify\UpdateUserProfileInformation;
use Illuminate\Support\ServiceProvider;
use Laravel\Fortify\Fortify;

class FortifyServiceProvider extends ServiceProvider
{
    /**
     * Register any application services.
     *
     * @return void
     */
    public function register()
    {
        //
    }

    /**
     * Bootstrap any application services.
     *
     * @return void
     */
    public function boot()
    {
        Fortify::createUsersUsing(CreateNewUser::class);
        Fortify::updateUserProfileInformationUsing(UpdateUserProfileInformation::class);
        Fortify::updateUserPasswordsUsing(UpdateUserPassword::class);
        Fortify::resetUserPasswordsUsing(ResetUserPassword::class);

        //register
        Fortify::registerView(function () {
            return view('auth.register');
        });

        //login
        Fortify::loginView(function () {
            return view('auth.login');
        });

        //forgot
        Fortify::requestPasswordResetLinkView(function () {
            return view('auth.forgot-password');
        });

        //reset
        Fortify::resetPasswordView(function ($request) {
            return view('auth.reset-password', ['request' => $request]);
        });

    }
}

Langkah 4 - Register Fortify Service Providers

Setelah kita berhasil mengaktifkan view untuk Authentication di dalam function boot di FortifyServiceprovider, sekarang kita lanjutkan untuk melakukan register provider dari Laravel Fortify. Silahkan buka file config/app.php kemudian tambahkan kode berikut ini di dalam array providers :

'providers' => [
	...
	App\Providers\FortifyServiceProvider::class,
];

Sekarang kita sudah bisa menggunakan Laravel Fortify di dalam Project Laravel kita untuk melakukan proses Autentication. Jika ingin menggunakan fitur Two-factor Authentication, silahkan teman-teman bisa membuat tampilannya sendiri, karena Laravel Fortify tidak menyediakan templaate tersebut. Akan tetapi jika menggunakan Laravel Jetstream, maka tampilan tersebut sudah otomatis dibuatkan.

Langkah 5 - Menjalankan Migration

Setelah semua proses installasi dan konfigurasi Laravel Fortify selesai, sekarang kita lanjutkan untuk melakukan migrasi database. Silahkan jalankan perintah di bawah ini :

php artisan migrate

Jika Berhasil maka teman-teman bisa cek database dengan nama db_laravel_fortify, maka kita sudah berhasil dibuatkan beberapa table secara otomatis.

Di artikel selanjutnya kita semua akan belajar bagaimana cara membuat proses Register menggunakan Laravel Fortify. Dan kita akan menggunakan Bootstrap untuk membuat tampilannya. Terima Kasih


Fika Ridaul Maulayya
I'm a Full-Stack Web Developer, Content Creator and CO-Founder Santri Koding. I share everything i know with Articles, Screencasts and E-Books at SantriKoding.com
KEBIJAKAN KOMENTAR

Saat memberikan komenatar silahkan memberikan informasi lengkap tentang error, seperti: screenshot, link kode, dll. Baca aturan komentar kami

KOMENTAR