Hallo semuanya, kembali lagi di artikel blog dumet kali ini saya akan kembali membahas tentang laravel dimana saat ini kita akan membahas tentang Memahami Magic Property Pada Model Eloquent Laravel.

Jika kalian adalah pengguna laravel pasti kalian pernah buka file model yang berbasis eloquent dan akan bingung melihat isinya yang tidak ada apa-apa di dalamnya. Ibarat kata nih ya itu model sudah paham betul table apa yg kita gunakan.

Nah di sini saya akan membahas lebih dalam tentan property apa saja yang dapat di gunakan untuk meningkatkan produktifitas kita dalam memanipulasi data pada projek kita nantinya.

Ada 10 magic property yang dapat kita gunakan :

  • 1 $table
  • 2 $primaryKey
  • 3 $fillable
  • 4 $guarded
  • 5 $dates
  • 6 $timestamps
  • 7 $casts
  • 8 $hidden
  • 9 $visible
  • 10 $appends

$TABLE
umumnya properti ini tidak perlu didefinisikan. Sebagai contoh, kita punya model dengan nama class User (tunggal/singular), maka Eloquent menganggap nama tabelnya adalah users (jamak/plural).
Lalu kapan kita menggunakan property ini ? nah property ini di gunakan jika table kita tidak sama dengan class model kita seperti ini :

$primarykey
Dalam penggunaan eloquent di laravel kolum atribut dengan nama id akan langsung di anggap sebuah primary key oleh eloquent, nah penggunaan primaryKey ini dapat di gunakan jika anda memiliki atribut key yang berbeda seperti ini :

$fillable
Properti yang satu ini punya fungsi untuk mendaftarkan atribut apa saja yang sekiranya dapat disimpan atau dimanipulasi menggunakan create() atau insert().

Cara insert menggunakan create :

 

$dates
Jika terbiasa menggunakan migration di Laravel, pasti tidak asing dengan dua atribut ajaib dengan nama created_at dan updated_at. Nilainya sendiri berupa DateTime MySQL.

Ketika digunakan dalam aplikasi, dua atribut tersebut merupakan objek dari class Carbon. Memungkinkan kita untuk menggunakan method yang ada pada Carbon, semisal

Bagaimana jika kita punya atribut serupa, dengan nama lain tapi isian sama? Nah, kita bisa mendaftarkannya menggunakan properti $dates.

 

$timestamps
property ini sangat erat hubunganya dengan property date, jika di migration akan muncul atribut column  created_at dan updated_at nah property $timestamps ini berfungsi untuk meniadakan atribute tadi menjadi false jika tidak ingin menggunakanya tau meu membuat atribut secara manual :

 

BAiklah sekian dulu dari saya yang membahas tentang Memahami Magic Property Pada Model Eloquent Laravel Part 1 , saya akan lanjut pada part 2.