Eğitim Serisi 26 Jan 2026 2 dk

Laravel Eloquent ORM Nedir? Model Yapısı ve Veri Yönetimi (Gün 5)

Author
CyberDirtyCat
Full Stack Developer
Laravel Eloquent ORM Nedir? Model Yapısı ve Veri Yönetimi (Gün 5)

SQL Yazmadan SQL Kullanmak

Merhaba dostlar! Ben Uğurcan. 5. Gündeyiz ve işler iyice keyifli hale geliyor.

Dün veritabanı tablolarımızı oluşturduk. Peki bunlara veri eklemek veya çekmek için uzun uzun SELECT * FROM clients WHERE... gibi SQL sorguları mı yazacağız? Hayır.

Laravel'in süper gücü Eloquent ORM devreye giriyor. Veritabanındaki tabloları birer "PHP Nesnesi" gibi yöneteceğiz.

Adım 1: Model Nedir?

Model, veritabanındaki tablonuzun Temsilcisidir.

  • clients tablosunun temsilcisi -> Client modelidir.
  • projects tablosunun temsilcisi -> Project modelidir.

Laravel'de Model isimleri Tekil, Tablo isimleri Çoğul olur. Bu kurala uyarsanız Laravel her şeyi otomatik halleder.

Adım 2: Model Oluşturma

Hadi Müşteri tablomuz için temsilcimizi oluşturalım. Terminali açın:

php artisan make:model Client

app/Models/Client.php dosyasını açın. Şu an içi boş, ama arkada büyük bir güç var. İçine "Toplu Atama" (Mass Assignment) güvenliği için şu satırı ekleyelim:

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class Client extends Model
{
    // Veritabanına toplu olarak eklenebilecek sütunları belirtiyoruz (Güvenlik için şart)
    protected $fillable = ['name', 'email', 'phone', 'budget'];
}

Adım 3: Tinker ile Test Sürüşü

Henüz bir formumuz yok ama kodlarımızın çalışıp çalışmadığını test edebiliriz. Laravel'in Tinker adlı bir test konsolu vardır.

Terminale şunu yazın:

php artisan tinker

Açılan ekranda şu PHP kodunu yazıp Enter'a basın:

App\Models\Client::create(['name' => 'Ahmet Yılmaz', 'email' => 'ahmet@mail.com', 'budget' => 5000]);

Ekrana oluşturulan veriyi bastıysa tebrikler! Tek satır SQL yazmadan veritabanına kayıt eklediniz. Çıkmak için exit yazabilirsiniz.

Adım 4: Git Commit

Modellerimizi oluşturduk, güvene alalım.

git add .
git commit -m "Gün 5: Client modeli oluşturuldu ve fillable alanları tanımlandı"
git push

🎯 GÜNÜN GÖREVİ (Challenge)

Sıra sende!

  1. Terminalden Project (Proje) modelini oluştur.
  2. projects tablosundaki sütunları (title, description, status vb.) $fillable dizisine ekle.
  3. Tinker'ı aç ve App\Models\Project::create(...) komutuyla veritabanına sahte bir proje ekle.
  4. phpMyAdmin'den projects tablosunu kontrol et, veriyi gördüysen ekran görüntüsünü veya yorumunu paylaş: "SQL bitti, yaşasın Eloquent!"


Bu Teknolojiyle Projenizi Uçuralım

Yazıda bahsettiğim yöntemleri projenize entegre etmek ister misiniz? Profesyonel destek alın.

Teklif Al
#laravel kurulum #Windows Laravel #Mac Laravel #Linux PHP kurulumu #Web Geliştirme

Yorumlar (0)

Düşüncelerini Paylaş

Henüz yorum yapılmamış.