Laravel Eloquent CRUD İşlemleri

Merhaba Mobilhanem.com takipçileri,
Laravel ile eğitim serimizin yeni dersinde Laravel Eloquent yapısı kullanarak CRUD yani Create (oluşturma), Read(Okuma), Update(Güncelleme) ve Delete/Destroy(Silme) işlemlerini anlatmaya  çalışacağım. Sizin yorumlarınız çok önemli lütfen paylaşım ve yorumlarınızı bizden esirgemeyin

Laravel Eloquent Nedir?

Laravel yapısının veritabanı işlemlerini model aracılığı ile kolayca yapmanızı sağlayan bileşenidir. Bu sayede özellikle bir sonraki yazımızda işleyeceğimiz tablolar arası ilişki sistemini kolayca kurabilirsiniz.

Yine önceki yazılarımızda kullandığımız Page Controller dosyasını kullanalım. Önceki yazımızda yer alan Page Controller dosyasımızı hatırlamak için ekleyelim.

laravel query builder
laravel query builder

Yukarıda yer alan görseldeki kodlarımız Laravel Query Builder ile yapılmıştı. Şimdi bunları Eloquent ile yapalım.

laravel eloquent
laravel eloquent

Hemen ilk değişikliğimiz Laravel Raw SQL Queries ve Laravel Query Builder kullanırken ihtiyacımız olan ‘DB’ methodunu kaldırıp yerine Laravel Eloquent için gerekli olan modelimizi eklemek oldu. Bunun için ‘namespace’ satırının altına

use App\Page;

satırını ekleyerek yapmamız gerek. Tabi bir ‘pages’ tablosunu kullanacağımız için ‘Page’ modelini ekledik.

Laravel Eloquent oldukça anlaşılır ve takip edilebilir bir sistemdir. Mesela yeni bir veri eklemek için

        $page = new Page;
        $page->baslik = "Laravel Eloquent";
        $page->icerik = "Laravel Eloquent ekleme işlemlerini yaptık";
        $page->aktif = 1;
        $page->save();

yapmamız yeterli burada sol bölümdeki -> sonra gelenlerin tablodaki kolon isimleri olduğuna dikkat etmemiz gerek.

Ayrıca tüm veriyi almak için de oldukça basit olan

$pages = Page::all();

satırını kullanmamız yeterli olacaktır.

Laravel Eloquent Where Kullanımı

Bu yapıda aynı Query Builder gibi where kullanımı oldukça gelişmiştir. Bu tanım iki ya da üç değişiken ile kullanılabiliyor. Bunu şu şekilde açıklayabiliriz. Eğer iki değişkenli bir tanım kullanılacak ise örneğin

Page::where('aktif', 1)->get();

Eğer iki değişkenli bir where ifadesi kullanırsanız bu eşitlik anlamı taşır. Eşitlik harici durumlar için ise üç değişkenli where kullanmalısınız

Page::where('aktif', '!=', 1)->get();

bunun sql karşılığı ise

select * from pages where aktif!=1;

Gördüğünüz gibi aslında Query Builder da yer alan tablo odaklamasını bizim yerimize Laravel Eloquent model yapısını kullanarak yapmaktadır.

Mobilhanem.com için yazdığım bu yazımda Laravel Eloquent yapısından bahsetmeye çalıştım. Daha fazla detaylı bilgi için laravel dökümanından yararlanabilirsiniz.

Tüm Laravel Derslerimiz için tıklayınız.

Mobilhanem.com üzerinden yayınladığım laravel eğitimlerine devam edeceğiz. Yazımız ile ilgili tüm sorularınızı yorum bölümden ulaştırabilirsiniz. Bunun dışındaki diğer sorularınız için sorucevap.mobilhanem.com sitesini kullanabilirsiniz.

Umarım sizin için yararlı olmuştur. Okuduğunuz için teşekkürler. Daha fazla kişinin okuması için paylaşmayı unutmayın…

7

Onur Üre

Aslen jeoloji mühendisi olup hiç mesleğini yapmaya fırsat bulamayan ve gönlünde hep bilgisayar ve programlama olan, evden (home-office) çalışma şekline bayılan, evli, 2 kedi ve 1 tavşan babası, sokaktaki her köpek, kedi, kuşun abisi olmaya çalışan biriyim. Lütfen bir kap su bir kap yemek her köşe başına...

4 Yorum

  • Merhaba Dersleriniz İçin Öncelikle Çok Teşekkürler.

    Ben kendi mvc yapımı geliştirmekteyim. psr-4 ile tüm yapıyı değiştirdim herşey yolunda Eloquent sistemini de ekledim tabiki. Model İçinde kullanımı tamam süper bir kolaylık ama bunu normal fonksiyon içinde sql sorgusu kullanmamız gerektiğinde nasıl yapmalıyız. bu konuda bilgilendirirseniz çok sevinirim. İyi Çalışmalar

    • Merhaba öncelikle geç cevabım için kusura bakmayın. umarım cevabı bulmuşsunuzdur. Fakat ben tam olarak sorunuzu anlayamadım. yani controller üzerinden bir kullanımdan mı bahsediyorsunuz?

Haftalık Bülten

Mobilhanem'de yayınlanan dersleri haftalık mail almak ister misiniz?