تکنولوژی نوین اینترنتی
مدلها در لاراول به عنوان نمایندهای از جداول پایگاه داده عمل میکنند و به شما این امکان را میدهند که با دادهها بهصورت ساده و با استفاده از Eloquent ORM کار کنید. در این مقاله، روشهای مختلف استفاده از مدلها، عملیات پایهای و روابط بین مدلها را بررسی خواهیم کرد.
برای تعریف یک مدل در لاراول، میتوانید از دستور artisan make:model
استفاده کنید. به عنوان مثال، برای ایجاد مدل Post
، دستور زیر را اجرا کنید:
این دستور یک کلاس مدل به نام Post
در پوشه app/Models
ایجاد میکند.
لاراول به طور پیشفرض نام جدول را از مدل شما به صورت جمع بهدست میآورد. برای مثال، مدل Post
به طور پیشفرض به جدول posts
متصل میشود. اگر نام جدول شما متفاوت باشد، میتوانید آن را در مدل مشخص کنید:
برای کنترل ویژگیهای مدل، میتوانید از ویژگیهای مختلف مانند fillable
، guarded
و timestamps
استفاده کنید.
$fillable
):این ویژگی تعیین میکند که کدام فیلدها میتوانند بهطور جمعی پر شوند.
$guarded
):این ویژگی فیلدهایی را که نمیتوانند بهطور جمعی پر شوند مشخص میکند.
$timestamps
):اگر میخواهید از تایماستمپها (مثل created_at
و updated_at
) استفاده نکنید، میتوانید آنها را غیرفعال کنید.
برای ذخیره دادهها در مدل، میتوانید از متد save()
استفاده کنید:
برای بهروزرسانی دادهها:
برای حذف دادهها:
لاراول اجازه میدهد تا پرسوجوهای پیچیدهتری با استفاده از Eloquent ORM انجام دهید.
لاراول روابط مختلفی را بین مدلها پشتیبانی میکند. این روابط شامل یک به یک (One-to-One)، یک به چند (One-to-Many) و چند به چند (Many-to-Many) هستند.
در مدل User
:
در مدل Profile
:
در مدل Post
:
در مدل Comment
:
در مدل Student
:
در مدل Course
:
Scopeها در لاراول به شما این امکان را میدهند که فیلترهای قابل استفاده مجدد برای مدلها ایجاد کنید. به عنوان مثال، یک scope برای جستجوی پستهای منتشر شده:
سپس میتوانید از این scope در پرسوجوها استفاده کنید:
مدلها در لاراول به شما این امکان را میدهند که بهراحتی با پایگاه داده تعامل داشته باشید. با استفاده از Eloquent ORM میتوانید عملیات CRUD را به سادهترین شکل ممکن انجام دهید و روابط پیچیده بین جداول را به راحتی مدیریت کنید.