Belajar Laravel: Konfigurasi Dan Struktur Direktori

3 min read

Sebelum memulai proses pengembangan hal yang harus dilakukan adalah konfigurasi aplikasi Laravel kamu, file konfigurasi biasanya terletak di dalam folder config/. Di dalam folder tersebut terdapat beberapa file yang sudah terdokumentasi dengan baik, pelajari dan pahami apa maksud dari setiap filenya.

Laravel: Konfigurasi dan Struktur Direktori
Laravel: Konfigurasi dan Struktur Direktori

Environment Config

Saya masih belum memberikan intruksi apa saja yang akan diubah di file konfigurasi proyek laravel kamu, daripada mengubahnya langsung pada file-file yang berada di dalam folder config alangkah lebih baiknya menggunakan environment config yang sudah ditawarkan oleh Laravel.

Environment Config adalah sebuah file .env yang berisi konfigurasi aplikasi web Laravel, ini biasanya sudah dibuat secara otomatis pada laravel fresh installation. Laravel menggunakan DotEnv PHP Library untuk menggunakan file .env. Akan sangat berguna sekali jika kamu ingin menggunakan konfigurasi yang berbeda pada saat development atau production mode.

Perhatian ! Di dalam fresh instalasi laravel biasanya terdapat 2 file environment config, diantaranya adalah .env dan .env.example.

Daripada waktu akan habis dengan membaca penjelasan saya yang cukup berbelit-belit tanpa ada ujungnya, mungkin lebih baik jika kita mulai latihan mengubah beberapa konfigurasinya.

Mengubah Nama Aplikasi

Secara default value dari APP__NAME adalah Laravel. cara untuk mengubahnya adalah seperti kode dibawah ini.

APP_NAME=LaraStart

Setup Database

Dengan .env kamu bisa juga mengatur database yang ingin kamu gunakan. Settingan default laravel seperti dibawah ini.

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=

Kamu bisa mengubahnya dengan database yang kamu pilih. misalnya saya disini akan menggunakan database bernama db_larastart

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=larastart
DB_USERNAME=contohuser
DB_PASSWORD=contohpass

Jika kamu sudah mengatur database kamu dengan password, maka masukkanlah password yang sesuai dengan usernya. Mungkin jika kamu menggunakan mysql XAMPP kamu tidak perlu mengatur DB_USERNAME dan DB_PASSWORD.

Struktur Direktori Laravel

Mengatur bagian dasarnya sudah, maka sekarang kita coba untuk mengetahui struktur direktori yang sudah disediakan oleh Laravel bertujuan menyediakan starting point dari proyek kamu.

List Direktori

  • app, menyimpan beberapa kode inti laravel framework.
  • bootstrap, memiliki file bernama app.php yang berfungsi untuk bootstraping framework (membangunkan dirinya sendiri).
  • config, berisi beberapa file config (seperti yang sudah saya jelaskan diatas).
  • database, berisi database migrations, seed, dan factory.
  • public, menyimpan file index.php yang sebagai entri poin setiap request yang diterima oleh aplikasi kamu, dan mengatur autoloading.
  • resources, menyimpan beberapa file yang dibutuhkan oleh frontend, seperti javascript, css, dan yang terakhir adalah blade template.
  • routes, menyimpan semua route yang sudah kamu buat, secara default didalam folder ini sudah berisi beberapa file web.php, api.php, console.php, dan channels.php
  • storage, menyimpan file blade yang sudah di kompilasi, dan beberapa file lainnya, seperti cache, sessions.
  • tests, menyimpan automated test yang kamu lakukan.
  • vendor, terdiri dari composer dependencies.

Direktori Yang Harus Kamu Ketahui

app Direktori

Direktori app yang harus kamu perhatikan karena kebanyakan file dasar ada disini, secara default direktori ini memiliki namespace App dan disini sudah termuat secara otomatis oleh composer menggunakan PSR-4 autoloading standard.

Di dalamnya berisi beberapa sub-direktori seperti Console,Http, dan Providers.

app/Http

Direktori ini berisi file-file yang digunakan untuk menghandle Request-response Http, didalamnya memiliki 3 sub direktori antara lain adalah Controllers, Middleware, dan Requests.

app/Http/Controllers

Menyimpan file class Controller, misalnya ProductController.php, UserController.php.

app/Http/Middleware

Meyimpan file class Middleware, berguna untuk filtering HTTP request yang dikirim oleh user. Secara default laravel sudah memberikan beberapa Middleware seperti Authenticate User, dan CSRF Protection.

app/Http/Requests

Berisi file yang menghandle form request.

Dimanakah Lokasi class Model Pada Laravel?

Ini salah satu yang membuat bingung kebanyakan developer yang baru saja mempelajari laravel, seperti yang kita ketahui framework PHP MVC pada umumnya memiliki direktori models untuk class Model.

Berbeda dengan laravel, kalian bisa membuat class Model di direktori app/. Misalnya kita akan membuat model dengan nama file Product.php, maka kamu harus meletakkannya di app/Product.php.

Pro Tip ! Untuk membuat model, kalian bisa menggunakan artisan command. php artisan make:model Product.

comments powered by Disqus

Post Navigation