فصل دوم: پایگاه داده با Eloquent

Migration و ساخت جدول

مدیریت ساختار دیتابیس با Migration

Migration در لاراول روشی برای تعریف و مدیریت نسخه‌دار ساختار جداول پایگاه داده با کد PHP است، به‌جای نوشتن دستی کوئری‌های SQL. این کار باعث می‌شود ساختار دیتابیس در کنترل نسخه (Git) قرار بگیرد و بین اعضای تیم و سرورهای مختلف به‌راحتی هماهنگ شود.

برای ساخت یک Migration جدید:

php artisan make:migration create_posts_table

سپس ساختار جدول را در متد up تعریف می‌کنیم:

public function up()
{
    Schema::create('posts', function (Blueprint $table) {
        $table->id();
        $table->string('title');
        $table->text('body');
        $table->foreignId('user_id')->constrained();
        $table->timestamps();
    });
}

public function down()
{
    Schema::dropIfExists('posts');
}

متد id() یک ستون کلید اصلی خودافزا می‌سازد، foreignId با constrained() یک کلید خارجی به جدول users متصل می‌کند و timestamps() دو ستون created_at و updated_at را به‌صورت خودکار اضافه می‌کند. برای اجرای تمام Migrationهای در انتظار:

php artisan migrate

اگر بخواهید آخرین Migration را برگردانید (rollback)، از دستور php artisan migrate:rollback استفاده کنید. متد down دقیقاً برای همین حالت نوشته می‌شود تا عملیات up را خنثی کند. تسلط بر Migration پیش‌نیاز کار درست با Eloquent در درس بعدی است.

برای ذخیره‌ی پیشرفت و شرکت در آزمون، وارد شوید — رایگان است.