Pada tutorial kali ini, kita akan belajar membuat custom perintah artisan di laravel 10. Laravel sendiri menyediakan perintah artisan sendiri untuk membuat migrasi, model, controller, dll. Tetapi jika Anda ingin membuat perintah artisan sendiri untuk pengaturan proyek, pengguna admin, dll. Maka saya akan membantu Anda cara membuat perintah artisan kustom di aplikasi laravel.
Pada contoh ini, kita akan membuat perintah “php artisan create:users” menggunakan perintah artisan laravel. Perintah ini akan mengambil satu argumen dalam bentuk bilangan bulat. Kemudian kita akan membuat user menggunakan factory berdasarkan argumen perintah tersebut.
Jadi mari kita ikuti langkah di bawah ini untuk membuat perintah custom artisan Anda sendiri di aplikasi laravel.
Install Laravel
Pertama-tama, kita perlu mendapatkan aplikasi versi Laravel yang baru dengan menggunakan perintah di bawah ini, Jadi buka terminal Anda atau command prompt dan jalankan perintah di bawah ini:
composer create-project laravel/laravel example-app
Konfigurasi Database
Pada tahapan ini, kita perlu menambahkan konfigurasi database pada file .env. jadi, mari kita tambahkan detail berikut dan kemudian jalankan perintah migrasi:
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=laravel_custom_artisan DB_USERNAME=root DB_PASSWORD=
Selanjutnya, jalankan perintah migrasi untuk membuat tabel users.
php artisan migrate
Jika terdapat pesan “The database ‘laravel_artisan_command’ does not exist on the ‘mysql’ connection”, Anda bisa langsung ketik yes agar laravel membuatkan database secara otomatis.
Membuat Perintah Artisan
Setelah itu, kita perlu membuat class “CreateUsers” dengan menggunakan perintah berikut.
php artisan make:command CreateUsers
Kemudian mari kita perbarui file app/Console/Commands/CreateUsers.php dengan menambahkan nama perintah “create-users“. Untuk menangani perintah tersebut kita tambahkan factory user di method handle() dengan menerima argument total user yang akan ditambahkan.
<?php namespace App\Console\Commands; use App\Models\User; use Illuminate\Console\Command; class CreateUsers extends Command { /** * The name and signature of the console command. * * @var string */ protected $signature = 'create:users {count}'; /** * The console command description. * * @var string */ protected $description = 'Create Dummy Users for your App'; /** * Execute the console command. */ public function handle() { $numberOfUsers = $this->argument('count'); for ($i = 0; $i < $numberOfUsers; $i++) { User::factory()->create(); } } }
Testing Perintah Artisan
Terakhir, kita akan menjalankan perintah custom dan memeriksa perintah artisan menggunakan perintah “php artisan list“.
Jadi, mari kita jalankan perintah custom aritsan berikut untuk membuat beberapa users:
php artisan create:users 10
Anda dapat mengecek di tabel users Anda, maka terdapat data yang barusan ditambahkan di sana. Selanjutnya, Anda juga dapat memeriksa daftar perintah artisan Anda.
php artisan list
Nantinya akan muncul daftar perintah artisan seperti berikut ini.