ORM yang fasih tampaknya merupakan metode yang sederhana, namun ada banyak fungsi semi-tersembunyi dan cara yang kurang dikenal untuk memaksimalkannya. Saya akan menunjukkan beberapa tips di artikel ini.

  1. Hindari kesalahan dengan menggunakan bantuan opsional

Saat mengakses nilai objek, jika objek tersebut null, kode Anda akan memunculkan kesalahan. Misalnya:

return $invoice->total;

Akan memunculkan error jika objek invoice kosong. Cara sederhana untuk menghindari kesalahan adalah dengan menggunakan pembantu Laravel opsional:

return optional($invoice)->total;

Sekarang, jika objek $invoice adalah null, kode Anda akan mengembalikan null alih-alih memunculkan kesalahan. Anda juga dapat menggunakan penutupan dengan bantuan opsional. Ia menerima penutupan sebagai argumen kedua dan akan dipanggil jika argumen pertama bukan nol.

2. Perbarui atau buat

Saat bekerja dengan database, biasanya kita melihat apakah record tertentu sudah ada dan memperbaruinya, atau membuat record baru jika belum ada. Sesuatu seperti ini:

Anda dapat menggunakan metode updateOrCreate Eloquent sebagai gantinya:

3. Variabel perulangan di foreach

Di dalam loop foreach, periksa apakah entri saat ini adalah yang pertama/terakhir dengan hanya menggunakan variabel $loop.

Ada juga properti lain seperti

Lebih lanjut di sini: https://laravel.com/docs/master/blade#the-loop-variable

4. Grup Rute

Grup rute dalam pengelompokan Rute, Anda dapat membuat grup di dalam grup, menugaskan middleware tertentu hanya ke beberapa URL di "induk"

5. Metode tanggal yang fasih di mana

Di Eloquent, cukup periksa tanggal dengan fungsi WhereDay() , WhereMonth() , WhereYear() ,
WhereDate() dan WhereTime() .

6. Menguji email ke laravel.log

Jika Anda ingin menguji konten email di aplikasi Anda tetapi tidak dapat atau tidak ingin menyiapkan sesuatu seperti Mailtrap, gunakan parameter .env MAIL_DRIVER=log dan semua email akan disimpan ke dalam file penyimpanan/logs/laravel.log, alih-alih benar-benar dikirim.

7. Kolom tertentu Model pada metode ::all()

Saat memanggil Model::all() Eloquent, Anda dapat menentukan kolom mana yang akan dikembalikan.

$users = User::all([‘id’, ‘name’, ‘email’]);

8. Nama Kolom Alias ​​di elequen

di Eloquent Query Builder, Anda dapat menentukan “as” untuk mengembalikan kolom apa pun dengan nama berbeda,
seperti dalam kueri SQL biasa.

9. Gunakan hasMany untuk membuat banyak anak

Jika Anda memiliki hubungan hasMany(), Anda dapat menggunakan saveMany() untuk menyimpan beberapa entri “anak” dari objek “induk” Anda, semuanya dalam satu kalimat.

10. Metode dd(Buang dan Mati)

Salah satu cara paling umum untuk men-debug kesalahan dalam ekosistem Laravel adalah dengan membuang variabel ke layar, dan mencari tahu apa yang salah dengannya.

Fungsi dd membuang variabel yang diberikan dan mengakhiri eksekusi skrip. Daripada melakukan dd($result); Anda dapat menempatkan -›dd() sebagai metode langsung di akhir kalimat Eloquent Anda, atau Koleksi apa pun

Terima kasih telah membaca artikel ini! Jangan lupa bertepuk tangan 👏 atau tinggalkan komentar 💬