Foruma hoş geldin 👋, Ziyaretçi

Merhaba Değerli Ziyaretçimiz, ForumaGel ailesi seni bekliyor! 🌟 Aramıza katılarak güçlü ve samimi topluluğumuzun bir parçası olabilirsin. Burada her üye değerli, her katkı kıymetli. Şimdi üye ol, bizimle birlikte gelişmenin ve keyifli sohbetlerin tadını çıkar! Sevgi ve Saygılarla, ForumaGel Yönetimi ❤️

SignUp Now!
  • Merhaba Değerli Ziyaretçimiz, ForumaGel ailesi seni bekliyor! 🌟 Aramıza katılarak güçlü ve samimi topluluğumuzun bir parçası olabilirsin. Burada her üye değerli, her katkı kıymetli. Şimdi üye ol, bizimle birlikte gelişmenin ve keyifli sohbetlerin tadını çıkar! Sevgi ve Saygılarla, ForumaGel Yönetimi ❤️
Yan Yana Banner

Eloquent Orm'nin Temel Özellikleri (1 Görüntüleyici)

  • Konuyu Başlatan Konuyu Başlatan fikretyn
  • Başlangıç tarihi Başlangıç tarihi

fikretyn

Resim Yükle
0
Rank
Katılım
12 Mar 2024
Mesajlar
60
Eloquent ORM, Laravel frameworkü ile birlikte gelen güçlü ve popüler bir nesne-ilişkisel haritalama (Object-Relational Mapping - ORM) kütüphanesidir. Eloquent, veritabanı tabloları ile PHP sınıfları arasında kolayca etkileşim kurulmasını sağlar ve veritabanı işlemlerini daha basit, okunabilir ve yönetilebilir hale getirir.

Eloquent ORM'nin Temel Özellikleri​

1 - Model Tanımlama:Eloquent, veritabanı tablolarını temsil eden modellerle çalışır. Her model bir tabloya karşılık gelir. Örneğin, User modeli users tablosuna karşılık gelir.
PHP:
class User extends Model
{
    // Model özellikleri burada tanımlanır
}

2 - Temel CRUD İşlemleri:Eloquent, veritabanı işlemlerini basit CRUD (Create, Read, Update, Delete) işlemleri ile gerçekleştirir.
Oluşturma (Create):
PHP:
$user = new User;
$user->name = 'John Doe';
$user->email = '[email protected]';
$user->save();

Okuma (Read):
PHP:
$user = User::find(1);
$users = User::all();

Güncelleme (Update):
PHP:
$user = User::find(1);
$user->name = 'Jane Doe';
$user->save();

Silme (Delete):
PHP:
$user = User::find(1);
$user->delete();

3 - Query Builder ile Çalışma:Eloquent, gelişmiş sorgular oluşturmak için Query Builder'ı kullanmanıza olanak tanır.
PHP:
$users = User::where('status', 'active')
              ->orderBy('name', 'desc')
              ->take(10)
              ->get();

İlişkiler (Relationships):Eloquent, veritabanı tabloları arasındaki ilişkileri tanımlamayı ve kullanmayı kolaylaştırır.
  • Bir-e-Bir (One-to-One):
PHP:
class User extends Model
{
    public function phone()
    {
        return $this->hasOne(Phone::class);
    }
}

Bir-e-Çok (One-to-Many):
PHP:
class Post extends Model
{
    public function comments()
    {
        return $this->hasMany(Comment::class);
    }
}

Çok-e-Çok (Many-to-Many):
PHP:
class User extends Model
{
    public function roles()
    {
        return $this->belongsToMany(Role::class);
    }
}

5 - Eager Loading:
Eloquent, ilişkili verilerin verimli bir şekilde yüklenmesi için eager loading sağlar.
PHP:
$users = User::with('posts')->get();

6 - Mutators ve Accessors:Eloquent, model özelliklerinin alınmasını veya ayarlanmasını özelleştirmek için mutators ve accessors sağlar.
  • Accessor:
    PHP:
    [/LIST]
    ]public function getFullNameAttribute()
    {
        return "{$this->first_name} {$this->last_name}";
    
    [LIST]
    [*][B]Mutator[/B]:
    [/LIST]
    
    public function setPasswordAttribute($value)
    {
        $this->attributes['password'] = bcrypt($value);
    }

    Neden Eloquent Kullanmalısınız?​

    • Kolay Kullanım: Eloquent, yazımı basit ve anlaşılırdır, bu da geliştiricilerin hızlı bir şekilde veritabanı işlemlerini gerçekleştirmesine olanak tanır.
    • MVC Yapısına Uyum: Eloquent, Laravel'in MVC (Model-View-Controller) yapısına tam uyum sağlar.
    • İlişkiler ve Bağlantılar: Veritabanı tabloları arasındaki ilişkileri tanımlamak ve yönetmek oldukça kolaydır.
    • Güçlü ve Esnek: Query Builder ve ORM yetenekleri sayesinde karmaşık sorgular ve işlemler kolayca gerçekleştirilebilir.
    Eloquent ORM, Laravel uygulamalarında veritabanı işlemlerini yönetmenin etkili ve verimli bir yoludur ve PHP ile çalışan geliştiriciler için büyük bir avantaj sağlar.
 

Şu an konuyu görüntüleyenler

Geri
Üst