Eloquent Orm'nin Temel Özellikleri

fikretyn 

Moderatör
moderatör rank
Katılım
12 Mar 2024
Konular
38
Mesajlar
49
Tepkime puanı
23
Çevrimiçi zaman
14 saat 4 dakika
Konum
samsun
Ticaret
0 / 0 / 0
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 = 'john@example.com';
$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.
 
Ana Sayfa Kayıt Ol Giriş Yap
Üst