Laravel Model Ayarlama İşlemleri
Hepinize merhaba dostlarım 😊. Uzun ve yoğun geçen bir haftanın ardından gelen pazar gününün gelip çatması ve hafta içerisinde hazırlamış olduğum yeni bir konu ile karşınızdayım. Sizlerin de pazar gününü artık hafta içerisinde iple çektiğinizi biliyorum. Yanlış anlamayın tatili istediğiniz hafta içinde bunaldığınızı kastetmiyorum aksine yeni konu için sabırsızlandığınızı belirtiyorum 😃.
Çenemin yine aşırı düşmesinin farkındayım. O halde sözü daha fazla uzatmadan bu dersimizde Laravel Framework üzerinde Model Dosyası Ayarlamaları konusundan bahsedeceğim 😊.
Normalde laravel ile proje geliştirirken bu ayarlamaların çoğunu es geçip sadece $guarded ve $table ayarlamalarını kullanırız diğerlerini pek kullanmayız. Şimdi gelin bu özelliklerin ne işe yaradığını bir tablo üzerinden sizlere anlatayım 😊.
Özellik | Değer |
protected $table = "table"; | Modelin bağlanacağı tabloyu bu şekilde belirtiriz. "table" olan alanın adını siz hangi tabloya bağlanacaksanız onu yazmanız gereklidir |
protected $guarded = []; | Tablo üzerinde işlem yaparken üzerinde işlem yapılmayacak alanları bunun içerisine bir dizi elemanı olarak eklemeniz gereklidir. Örneğin kullanıcının password ve doğum tarihi kısmına müdahale edilmeyecekse ["password","dogum_tarihi"] olarak belirtmemiz gereklidir. |
protected $fillable = [] | Fillable kısmına bakacak olursak dostlarım $guarded komutunun tam tersi şeklinde çalışır. Tablo içerisinde müdahale edeceğimiz kolonları bu dizi içerisinde belirmemiz gereklidir. Örneğin kullanıcının name ve surname bilgisini ["name","surname"] olarak belirtmemiz gereklidir |
protected $primaryKey = 'table_id'; | Bu kısımda ise dostlarım tablo üzerinde hangi kısmın primaryKey olacağını belirtiyoruz. Burada da "table_id" yazarak MySQL üzerinde tuttuğumuz tablonun table_id kolonunu primaryKey olarak belirtmiş olduk |
public $incrementing = true; | İsminden de anlayacağınız üzere dostlarım Primary Key olarak belirttiğimiz alanın otomatik şekilde artıp artmama durumunu belirtiyoruz. Eğer otomatik artmasını istemezsek bu ayarı false olarak değiştirebiliriz |
protected $keyType = 'integer'; | PrimaryKey olarak belirttiğimiz alanın hangi veri tipinde tutulacağının ayarını yaptık |
public $timestamps = true; |
Oluşturduğumuz tablo üzerinde created_at, updated_at olarak bize hazır şekilde sunulmuş alanları kullanıp kullanmama durumunu ayarlıyoruz. Eğer kullanmak istemezsek false olarak ayarlayabiliriz |
protected $dateFormat = 'U'; | Tablo üzerinde bize sunulan created_at ve updated_at alanlarının hangi tarih formatında tutulacağı bilgisini ayarlayabiliriz |
const CREATED_AT = 'created_at'; | Bize hazır olarak verilmiş created_at kolonunun ismini özelleştirmemize yarar |
const UPDATED_AT = 'updated_at'; | Bize hazır olarak verilmiş updated_at kolonunun ismini özelleştirmemize yarar |
şeklinde kodların görevleri vardır dostlarım 😊. Eğer büyük bir proje yapıyorsanız bu ayarlamalara çok ama çok dikkat etmenizi öneririm 😊
Eveeeet dostlarım bu yazımızda sizlere Laravel Framework üzerinde Model Dosyası Ayarlamaları konusundan elimden geldiğince dilim döndüğünce bahsetmeye çalıştım. Umarım faydalı olmuşumdur. Konu üzerinde eksik veya yanlış bir anlatım yapmış isem benimle iletişime geçmekten çekinmeyin 😊. Konu başlarda biraz karmaşık veya zor gelebilir dostlarım anlıyorum. Öğrenme süreci içeriside bu şekilde durumlarla karşılaşmanız normaldir. Bu kısımda sizlerden yapmanızı istediğim tek şey her yazımda da dediğim gibi "İstikrarlı ve Azimli Olmanız, Bolca Pratik Yapmanız" olacaktır. Bu dediklerimi hayat felsefeniz yaptığınız süreca başarı sizler için kaçınılmaz olacaktır.
Hayallerinizi gerçekleştirmeniz ve güzel yerlere gelmeniz dileklerimle... İyi çalışmalar dilerim 😊
Yazar Hakkında
Kendi Halinde Bir Backend Developer