Friday, November 27, 2020

Mengatasi 'Target class controller does not exist' di Laravel 8





Ada pembaharuan di laravel 8 dalam kita mendefinisikan rute, Laravel 8 dirilis kemarin dengan banyak fitur dan perubahan baru. Salah satu perubahan tersebut adalah penghapusan spasi nama rute, seperti yang tertulis di dokumentasi rilis laravel 8 mengenai Routing Namespace Update. Bahwa pada versi ini cara penulisan menggunakan sintaks callable PHP





Error tersebut terjadi karena tidak ditemukannya lokasi atau path dari Controller yang kita defisinikan pada route.

Masalahnya bukan karena kodenya rusak, tetapi 99,9%  dari versi sebelumnya  kita bisa mendefisinikan route seperti yang kita lakukan di versi sebelumnya namun tidak di laravel 8 tidak mendefinisikan namespace route ke kontroller secara otomatis. itu sebabnya kita mendapati problem atau error seperti Target class [xxxcontroller] does not exist.


Cara Mengatasi






Jika cara diatas terlalu rumit dan  jika  memiliki route banyak kita bisa memilih untuk menggunakan cara lainnya, yaitu dengan menambahkan namespace route.

 Diaravel 8 namespace route tidak disediakan secara otomatis, kita perlu menambahkannnya jika ingin seperti versi sebelumnya.  Buka RouteServiceProvider.php dan tambahkan properti $namespace seperti gambar dibawah




 $namespace di tambahkan setelah properti, bisa membuat route dengan format seperti sebelumnya. Contohnya seperti gambar dibawah 



Atau cara lain  dengan menambahkan path atau namespace pada action route seperti gambar dibawah













0 komentar:

Post a Comment