Laravel Modules adalah paket Laravel yang dibuat untuk mengelola aplikasi Laravel besar Anda menggunakan modul. Modul seperti paket Laravel, ia memiliki beberapa tampilan, pengontrol, atau model. Paket ini didukung dan diuji di Laravel 9.
Pertama Install Fresh Laravel Project atau Pergi Ke Laravel Proyek Yang Sudah Ada
composer create-project laravel/laravel nama_project
Selanjutnya Pergi Ke Laravel Project, Untuk menginstal melalui Composer, dengan menjalankan perintah berikut:
composer require nwidart/laravel-modules
Paket secara otomatis akan mendaftarkan penyedia layanan dan aliasnya. Secara opsional, publikasikan konfigurasi paket dan publikasikan stub dengan menjalankan:
php artisan vendor:publish --provider="Nwidart\Modules\LaravelModulesServiceProvider"
Secara default, kelas modul tidak dimuat secara otomatis. Anda dapat memuat modul Anda secara otomatis menggunakan psr-4. Misalnya :
{
"autoload": {
"psr-4": {
"App\\": "app/",
"Database\\Factories\\": "database/factories/",
"Database\\Seeders\\": "database/seeders/"
"Modules\\": "Modules/",
}
}
}
php artisan module:make Blog
Blog
adalah Nama Modul
php artisan module:make Blog User Auth
Blog
adalah Nama ModulUser
adalah Nama ModulAuth
adalah Nama Modul
php artisan module:make-model Post {?--flag} Blog
Post
adalah Nama Model / EntitasBlog
adalah Nama Modul Yang Sudah Dibuat Sebelumnya--migration
/-m
adalah Flag Untuk Membuat Sekaligus dengan Migration (Optional)
php artisan module:make-migration create_posts_table Blog
create_post_table
adalah Nama Migration yang akan Menghasilkan Nama Table "posts"Blog
adalah Nama Modul Yang Sudah Dibuat Sebelumnya
php artisan module:make-seed seed_fake_blog_posts Blog
seed_fake_blog_posts
adalah Nama Seeder Yang Merupakan Rekomendasi Dari Creator untuk Membedakan antara Seeder Main dan Module ProjectBlog
adalah Nama Modul Yang Sudah Dibuat Sebelumnya
php artisan module:make-controller PostsController {?--flag} Blog
PostsController
adalah Nama Controller dalam Modul dengan Path TertentuBlog
adalah Nama Modul Yang Sudah Dibuat Sebelumnya--plain
adalah Flag Untuk Membuat Controller Yang Polos (Optional)--api
adalah Flag Untuk Membuat Resource Controller (Optional)
php artisan module:seed Blog
Blog
adalah Nama Modul Yang Sudah Dibuat
Untuk Mencoba Aplikasinya, Silahkan Ketikan Perintah Berikut:
https://github.com/rembon2016/laravel-modules.git
Jalankan Migration dan Seeder Pada Modul Usr, Untuk Membuat Akun Dummy:
php artisan migrate && php artisan module:seed Usr
Akan Menghasilkan Kredensial Berikut:
- Email : {cek_kolom_email_pada_table}
- Password : password
Silahkan Menuju Kedalam Tautan Berikut:
127.0.0.1/usr
Database Environment
- Database Connection: PostgreSQL
- Host: 12.0.0.1 (Local)
- Port: 5432