Product Model
Introduction to Eloquent Eloquent merupakan sebuah object-relational mapper (ORM) dalam Laravel yang memudahkan kita untuk berinteraksi dengan database. Saat menggunakan Eloquent, setiap tabel database memiliki "Model" yang sesuai yang digunakan untuk berinteraksi dengan tabel tersebut. Model-model Eloquent memungkinkan kita untuk menyisipkan, mengambil, memperbarui, dan menghapus catatan dari tabel-tabel database. Informasi lebih lanjut tentang Laravel Eloquent dapat ditemukan di sini: https://laravel.com/docs/9.x/eloquent.
Model-model Laravel terletak di folder app/Http/Models. Di dalam folder tersebut, kita akan menemukan file User.php yang berisi kelas model User yang telah ditentukan di Laravel. Untuk saat ini, kita akan fokus pada model Produk kita, jadi mari kita buat.
Manfaat Eloquent:
Mengurangi Boilerplate Code: Eloquent mengurangi kode berulang dan boilerplate yang terkait dengan interaksi database. Meningkatkan Keamanan: Eloquent membantu mencegah injeksi SQL dan masalah keamanan lainnya dengan menyediakan metode terlindungi untuk mengakses dan memanipulasi data. Meningkatkan Keterbacaan: Eloquent menghasilkan kode yang lebih mudah dibaca dan dipahami, meningkatkan pemeliharaan dan kolaborasi proyek. Meningkatkan Produktivitas: Eloquent menghemat waktu dan meningkatkan produktivitas dengan menyediakan sintaks yang ringkas dan intuitif untuk operasi database umum.Membuat Model Produk
Di Terminal, pergi ke direktori proyek, dan jalankan perintah berikut:php artisan make:model Product
Anda akan melihat file Product.php di dalam folder app/Models. Mari kita analisis kode model Produk.
Kita memiliki kelas Product yang memperluas kelas Model Eloquent Laravel. Kelas Model Eloquent Laravel akan menyediakan kelas Produk kita dengan sejumlah metode dan atribut yang berguna. Metode-metode tersebut akan memudahkan komunikasi dengan database. Oleh karena itu, ia menggunakan sebuah trait HasFactory (namun kita akan melewatinya).
Kita akan membahas beberapa masalah dengan model-model "kosong" ini nanti.
Pertimbangan Penting tentang Eloquent
Mari kita periksa beberapa pertimbangan saat menggunakan Laravel Eloquent.- Eloquent juga akan mengasumsikan bahwa setiap tabel database yang sesuai dengan model memiliki kolom kunci utama yang bernama id. Untuk semua migrasi kami, kami akan menggunakan metode id yang mendefinisikan kolom id.
- Eloquent akan mengasumsikan bahwa model Produk menyimpan catatan dalam tabel produk (periksa tambahan 's'). Konvensi ini berlaku untuk semua model.
- Secara default, Eloquent mengharapkan kolom created_at dan updated_at ada pada tabel database yang sesuai dengan model Anda. Eloquent secara otomatis akan mengatur nilai kolom ini ketika model dibuat atau diperbarui. Untuk semua migrasi kami, kami akan menggunakan metode timestamps yang membuat kolom-kolom ini.
Metode Utama Mari kita diskusikan beberapa metode utama yang disediakan oleh Eloquent kepada model-model kami.
- Product::all(): mengambil semua catatan produk.
- Product::find(1): mengambil produk dengan id 1.
- Product::findOrFail(1): mirip dengan sebelumnya, tetapi akan memunculkan pengecualian jika tidak ada hasil yang ditemukan.
- Product::create(['name' => 'TV', ...]): membuat catatan baru di database. Anda harus melewati sebuah array asosiatif dengan data yang akan ditetapkan, id tidak diperlukan karena dihasilkan secara otomatis.
- Product::destroy(1): menghapus produk dengan id 1.
Kita akan menggunakan beberapa metode sebelumnya dalam pembahasan selanjutnya.
Tidak ada komentar:
Posting Komentar