Skip to content

06.Entity

Muhammet SAFAK edited this page Aug 15, 2022 · 2 revisions

Entity

Veritabanındaki her bir satırı (veriyi) temsil eden ana soyutlama katmanıdır.

Entity Sınıfı Oluşturma

class User extends \InitPHP\Database\Entity
{
    public function getMailAttribute()
    {
        return $this->mail;
    }

    public function setMailAttribute(string $mail)
    {
        $this->mail = $mail;
    }
}

Soyut/Sanal Entity Yöntemleri

Entity sınıflarınızda hiçbir metot oluşturmasanız bile kullabileceğiniz get ve set metotları vardır.

  • get{ColumnName}Attribute() : Verinin ilgili kolondaki değerini döndürür.
  • set{ColumnName}Attribute($value) : Verinin ilgili kolondaki değerini tanımlar.

Sanal yöntemlerdeki söz dizimine dikkat edin. "get" ve ya "set" ile başlıyor ve "Attribute" ile bitiyor. Arasındaki CamelCase yazım notasyonu ile ilgili sütunun adı yer alıyor. Dikkat etmeniz gereken noktada tam olarak burası, aşağıdaki örneklere göz atın.

  • post_id isimli kolon için yazım notasyonu PostId şeklindedir. Yani bu isimdeki kolon için metot isimleri şu şekilde olacaktır; getPostIdAttribute(), setPostIdAttribute()
  • mail isimli kolon için yazım notasyonu Mail şeklindedir. Yani bu isimdeki kolon için metot isimleri şu şekilde olacaktır; getMailAttribute(), setMailAttribute()

Not : Eğer sütun adı olarak postIdgibi büyük harf içeren bir isim kullanıyorsanız; bu sanal yöntemleri kullanamazsınız. Yöntemleri elle manuel olarak oluşturmanız gerekir.

Clone this wiki locally