أساسيات Eloquent ORM والتعامل مع البيانات

تعتبر أداة Eloquent ORM هي الجوهرة الحقيقية في تاج Laravel. هي عبارة عن نظام "ربط الكائنات بالبيانات"، حيث تتيح لك التفاعل مع جداول قاعدة البيانات باستخدام كائنات (Objects) بدلاً من كتابة استعلامات SQL المعقدة. بساطة Eloquent تجعلك تشعر أنك تتعامل مع متغيرات PHP عادية، بينما يقوم النظام في الخلفية بتوليد استعلامات آمنة وفعالة.

1. النماذج (Models)

في لارافيل، يمثل كل جدول في قاعدة البيانات كلاس يسمى Model. يتم تخزين هذه الملفات في مجلد app/Models. لإنشاء نموذج لجدول المقالات:

php artisan make:model Post
قاعدة التسمية: يستخدم لارافيل الجمع في الجداول والمفرد في النماذج. فإذا كان الجدول اسمه posts، يجب أن يكون اسم النموذج Post.

2. العمليات الأساسية (CRUD)

إليك كيف يمكنك تنفيذ العمليات الأربع الأساسية باستخدام Eloquent بكل بساطة:

Controller Example
use App\Models\Post;

// 1. جلب جميع البيانات
$posts = Post::all();

// 2. إنشاء سجل جديد
$post = new Post;
$post->title = 'مقال جديد';
$post->save();

// 3. البحث عن سجل وتعديله
$post = Post::find(1);
$post->title = 'عنوان معدل';
$post->save();

// 4. حذف سجل
$post->delete();

3. الاستعلامات المتقدمة

يتيح لك Eloquent تصفية وتنظيم البيانات بسلاسل نصية سهلة القراءة:

// جلب المقالات النشطة فقط وترتيبها بالأحدث
$posts = Post::where('active', true)
             ->orderBy('created_at', 'desc')
             ->get();

أسئلة شائعة حول Eloquent

هو خطأ أمني يمنعك من إدخال مصفوفة بيانات كاملة دفعة واحدة (مثل بيانات نموذج) إلا إذا قمت بتعريف الحقول المسموح بها عبر خاصية $fillable داخل الـ Model.

نعم، هناك فرق بسيط في الأداء لصالح SQL الخام، ولكن هذا الفرق لا يذكر مقابل الأمان، سهولة الصيانة، وسرعة التطوير التي يوفرها Eloquent للمشاريع الكبرى.
الدرس القادم

توليد البيانات الوهمية (Seeding)

تعلمنا كيف نسجل البيانات، الآن سنكتشف كيف نملأ قاعدة البيانات بمئات السجلات الوهمية في ثانية واحدة لأغراض الاختبار باستخدام Factories و Seeders.

تعلم Factories & Seeders
المحرر الذكي

اكتب الكود وشاهد النتيجة فوراً

جرب الآن مجاناً
قناة ديف عربي

تابع أحدث الدروس والتحديثات مباشرة على واتساب

انضم الآن