Pembuatan command untuk menggenerate view pada Laravel bisa dilakukan dengan mudah menggunakan fitur Artisan Command. Langkah pertama yang perlu dilakukan adalah membuat command baru dengan perintah "php artisan make:command GenerateView". Setelah command baru berhasil dibuat, buka file "GenerateView" pada direktori "App\Console\Commands" untuk mengedit variabel $signature dan $description sesuai kebutuhan. Buka terminal dan masuk ke direktori project
php artisan make:command GenerateView
pada file GenerateView edit variable:
protected $signature = 'generate:view {name}';
protected $description = 'Generate a new view file';
Selanjutnya, tambahkan kode pada function "handle" untuk mengambil argument "name" dan menentukan path dari view yang akan dibuat. Kemudian, panggil function "makeDirectory" untuk membuat direktori view jika belum ada, dan tulis stub yang akan digunakan pada view baru. Terakhir, tambahkan informasi sukses pada command dan simpan file "GenerateView".
public function handle() {
$name = $this->argument('name');
$viewPath = resource_path('views/' . $name . '.blade.php');
$this->makeDirectory($viewPath);
$stub = file_get_contents(resource_path('stubs/view.stub'));
file_put_contents($viewPath, $stub);
$this->info('View file created successfully.');
}
Buat template view.sub pada direktori resources/stubs, kemudian isi view.sub sesuai dengan view yang akan dicopykan ke file view yang akan digenerate
Untuk menjalankan command yang sudah dibuat, gunakan perintah "php artisan generate:view nama_view" dengan format "nama_folder/nama_file" pada argument "name". Command tersebut akan membuat file view baru pada direktori "resources/views/nama_folder/nama_file.blade.php" dan mengisi file tersebut dengan isi dari file stub. Dengan demikian, pembuatan view pada Laravel bisa dilakukan dengan lebih mudah dan cepat menggunakan command yang sudah dibuat.
Selanjutnya, pada langkah keenam, tambahkan function "makeDirectory" pada file "GenerateView" untuk membuat direktori view baru jika belum ada. Function ini akan memeriksa apakah direktori yang diperlukan sudah ada atau belum. Jika belum ada, maka akan membuat direktori tersebut dengan permission 0755.
protected function makeDirectory($path)
{
if (! is_dir(dirname($path))) {
mkdir(dirname($path), 0755, true);
}
}
Pada langkah ketujuh, setelah menambahkan function "makeDirectory", simpan file "GenerateView" yang sudah diubah. Kemudian, pada langkah kedelapan, jalankan command "php artisan generate:view nama_view" dengan format "nama_folder/nama_file" pada argument "name". Command ini akan membuat file view baru pada direktori "resources/views/nama_folder/nama_file.blade.php" dan mengisi file tersebut dengan isi dari file stub.
php artisan generate:view nama_folder/index_peminjaman_barang
Dengan mengikuti langkah-langkah di atas, pembuatan command untuk menggenerate view pada Laravel sudah bisa dilakukan dengan mudah dan cepat. Selain itu, dengan adanya command ini, pengembang dapat menghemat waktu dan tenaga untuk membuat file view secara manual dan mengurangi kemungkinan kesalahan dalam pembuatan view. Semoga artikel ini bermanfaat bagi para pengembang Laravel yang ingin membuat command baru untuk menggenerate view.
No comments:
Post a Comment