Belajar Laravel : Laravel Content Project (config/auth) PART III

Belajar Laravel : Laravel Content Project (config/auth) PART III

Belajar Laravel : Laravel Content Project (config/auth) PART III

Ngulik kode - Hallo guys kembali lagi nih bareng saya revi, untuk article ini kita bakal bahas config/auth pada laravel, sekarang kita fokus ke auth.php lebih dulu, oke kita mulai materinya!.






Review!
Jadi sebelumnya kita sudah bahas tentang config/app dan ini adalah materi lanjutan tentu maksudnya kita sudah lanjut ke file selanjutnya yang terdapat pada project laravel, buat kalian yang belum belajar silahkan mampir (disini).

Materi!
Siapa yang tidak tahu authentication, authentication adalah proses untuk memverifikasi apakah yang memproses ini betul-betul user atau apakah yang memproses ini betul-betul terdapat datanya pada database system.
Laravel memiliki dua fasilitas authentication, yaitu "guard" dan "provider", apa itu guard? guard menentukan bagaimana pengguna diauthentikasi saat setiap melakukan request. Provider menentukan bagaimana pengguna mengambil dari penyimpanan persisten user sendiri.


Kapan kita menggunakannya?
Kita menggunakannya ketika suatu page atau controller atau system ingin diberikan hak akses, hanya orang tertentulah yang bisa mengatur ke system itu, authentication akan berhubungan dengan middleware.

Bagaimana cara kerja dari authentication?

Authentication workflow

Authentication paling mudah kita temukan ketika kita sudah pernah login ke dalam suatu system, ketika kita mengunjungi suatu page yang dibatasi hak akses, credential yang didapat akan dibandingkan dengan data yang terdapat pada database user atau hak akses, jika credential cocok maka proses selesai dan pengguna diberi authorization untuk mengakses.

Kita fokus kembali ke topik, pada laravel authentication terdapat tiga jenis, yaitu:

Authentication Defaults
Jenis auth ini mengontrol auth "guard" dan password reset secara default.



Authentication Guards
Sekarang kalian bisa mendefinisikan setiap authentication guard pada system, disini kita bisa memakai session storage dan eloquent user provider, maksudnya user benar-benar diambil dari database user atau hak akses, atau tempat penyimpanan lain yang digunakan oleh laravel.


Guard custom yang mimin buat


User Providers
Seluruh authentication driver harus memiliki user provider, dimana kita sebagai user akan dipaparkan di banyak file, terutama pada MVC, jika kita memiliki banyak user hak akses, kalian paparkanlah dengan menambah provider pada script. Pada driver kita bisa memilih fasilitas dari laravel yaitu eloquent, eloquent adalah object-relational mapping yaitu teknik pemrograman untuk memetakan antara object dengan database, jadi jika pada native PHP kita harus membuat suatu query tapi disini kita hanya perlu membuat ORM yang terdapat di laravel yaitu eloquent.

Contoh custom providers

Resetting Passwords
Pada reset password digunakan ketika berapa lama kita ingin menghapus session, reset password akan dilakukan ketika kita tidak menggunakan aplikasi laravel tetapi kita tidak melakukan logout hak akses. Jadi ketika kita registrasi hak akses, pada db akan terdapat remember token dan token itu akan hidup sementara jika kita menggunakan resetting password untuk kemanan system.

Custom resetting password untuk provider admins

Oke teman-teman materi auth telah selesai sekian dari saya semoga dapat bermanfaat, terima kasih sudah berkunjung pada blog ini, ikuti terus perkembangannya ya, semua article di laravel akan berkesinambungan, see u and keep learning!.
Belajar Laravel : Laravel Content Project (config/app) PART II

Belajar Laravel : Laravel Content Project (config/app) PART II

Belajar Laravel : Laravel Content Project (config/app) PART II

Ngulik kode - Hallo guys kembali lagi nih bareng saya admin yang sekarang sering nongol di Ngulik kode 😆. Pada article ini kita bakal bahas config/app laravel. Config laravel terdapat banyak file yang masing-masing di dalam filenya terdapat banyak fungsi tersendiri, tetapi sekarang kita fokus ke app.php, oke kita mulai materinya!.




Review!
Jadi kemarin kita udah bahas tentang app dan bootstrapnya laravel, ini adalah materi lanjutannya, buat kalian yang belum belajar silahkan mampir (disini).

Materi!
Seluruh file konfigurasi framework Laravel berada di direktori CONFIG, sebetulnya semua file yang berada di Laravel sudah terdapat dokumentasi supaya kita bisa mengetahui apasih fungsi file tersebut?, tidak hanya file di konfigurasi saja tentunya.




--------------------------------------------------------------------------------------------------------------------------



Application name adalah nama dari aplikasi kalian sendiri (Laravel). Value ini digunakan ketika framework kita ingin diberikan nama aplikasi, nama aplikasi bisa ditempatkan di berbagai lokasi aplikasi anda dengan syarat kita memanggil package dengan
{{ app()->getName() }}



application environment adalah app yang memutuskan bagaimana anda memilih untuk konfigurasi layanan yang terdapat di aplikasi Laravel anda pada file .env




Application Debug Mode adalah sebuah app yang bisa kalian pakai saat digunakan untuk debugging aplikasi kalian, seluruh error dan stack akan tercetak, untuk memakainya ganti status menjadi true sebaliknya false.



Application URL berfungsi untuk menghasilkan URL dengan benar dengan menggunakan artisan console (command promt), kita harus masuk ke directory Laravel supaya bisa memakai artisan.



Application Timezone, disini kalian bisa menggunakan value date-time untuk dipaparkan pada aplikasi Laravel kalian.



Application Locale Configuration, fungsi ini dipakai untuk menentukan bahasa apa yang akan digunakan pada aplikasi Laravel, kalian juga bisa mengganti bahasanya sesuai keinginan.



Encryption Key, fungsi ini digunakan oleh Illuminate encrypter service, dan akan diubah menjadi nilai random, 32 karakter string, jika aplikasi Laravel kalian ingin di deployment pastikan lakukan enkripsi.



Autoloaded Service Providers, service provider yang tercantum akan dimuat secara otomatis jika aplikasi anda melakukan request.



Class alias digunakan ketika jika kita ingin menggunakan class yang digunakan singkat, kita juga bisa menggunakannya saat di artisan command line.

Sekian dari saya semoga dapat bermanfaat, terima kasih sudah berkunjung pada blog ini, ikuti terus perkembangannya ya 💪😁.
Belajar Laravel : Laravel Content Project (app & bootstrap) PART I

Belajar Laravel : Laravel Content Project (app & bootstrap) PART I

Belajar Laravel : Laravel Content Project (app & bootstrap) PART I

Ngulik kode - Hallo guys kembali lagi nih bareng saya admin yang katanya baru nongol di Ngulik kode 😆. Pada article ini kita bakal bahas seluruh content atau isi project laravel (maksudnya yang ada di dalam folder project laravel). Tapi karna kita mau bahas semua fungsi seluruh content jadi mimin manage postnya, article ini membahas folder app dan bootstrap.



Review!
Jadi kemarin kita udah install semua kebutuhan laravel mulai dari composer sampai install laravel yang berlokasi di htdocs (monggo mampir).

Materi!
Oke ini adalah materi lanjutan, jadi setiap folder dan file di dalam project laravel punya fungsi masing-masing yang berkesinambungan dengan folder dan file lain yang tentunya tetap di dalam project laravel .

Contoh : maksud berkesinambungan itu gimana sih?
laravel adalah framework yang arsitektur aplikasinya MVC (Model View Controller), pada file model adalah tempat untuk memaparkan field yang berhubungan dengan file view dan mengkoneksikan database menggunakan file controller.

----------------------------------------------------------------------------------------------------

Content laravel project


Folder :

  • app
Kernel and Handler
Oke yang pertama kita bahas file Kernel.php yang berada di folder Console, file Kernel.php berfungsi untuk ketika kita berinteraksi dengan aplikasi kita melalui command line, dan ketika kamu menggunakan artisan, scheduled job is processed,  queued job is processed, semua itu kita bisa gunakan dan setting di console kernel. 

Kedua Handler.php yang berada pada folder Exceptions, file itu berfungsi sebagai Error handler authenticated, yang terdapat pada default file tersebut ketika kita login bukan sebagai auth, kita akan di redirect ke route login, jika kita memiliki banyak guard atau banyak user dan banyak admin dan banyak pilihan redirect kita bisa menambahkan kondisi pada file disini .

Controller and middleware
Ketiga, seluruh file yang berada di folder controller berfungsi untuk mengatur bagaimana mengambil data dari database, bagaimana source bisa terhubung dengan model, bagaimana ketika suatu aksi direspon dengan reaksi dengan menampilkan view yang harus sesuai dengan route.

Keempat, seluruh file yang berada di folder middleware berfungsi untuk membatasi suatu page beserta routenya, pada php native dikatakan SESSION, nah ketika kita memiliki multiple user kita harus membatasi hak aksesnya kemana saja si user akan di arahkan, semua itu bisa setting di middleware.

Nah di folder http terdapat juga file Kernel.php, file kernel di http berbeda dengan di console, perbedaannya yang terdapat di folder http digunakan untuk memproses permintaan yang masuk melalui web (HTTP), contohnya seperti request, ajax, dan sebagainya.

Providers
Providers adalah tempat utama semua bootstrap laravel, dan juga semua layanan inti Laravel di-bootstrap melalui service provider. Apa yang dimaksud dengan "bootstrapped"? Secara umum, laravel bermaksud mendaftarkan barang, termasuk me-registrasi service container bindings, middleware, dan route. Service provider adalah tempat utama untuk mengkonfigurasi laravel.


Bootstrap
Pada folder bootstrap disini bukan tempat untuk menyimpan file style page dari framework bootstrap, tetapi digunakan untuk inisialisasi (setting up path & environments) framework.

Sekian dari saya semoga dapat bermanfaat, terima kasih sudah berkunjung pada blog ini, next kita bahas folder config 💪😁.